SQL server中字符串转类型怎么办,如何解决
Admin 2022-05-31 群英技术资讯 1697 次浏览
今天小编跟大家讲解下有关“SQL server中字符串转类型怎么办,如何解决”的内容 ,相信小伙伴们对这个话题应该有所关注吧,小编也收集到了相关资料,希望小伙伴们看了有所帮助。一、 背景介绍
web应用采用的是ssh框架,数据库使用的sql server2014版本。
二、问题:
客户要求,ID列的数据类型必须是uniqueidentifier,一开始实体类的ID设计成java.lang.String类型;映射文件中ID的增长方式是uuid.hex
private java.lang.String id;
public java.lang.String getId(){
return id;
}
public void setId(java.lang.String id){
this.id=id;
}
<id name="id" column="ID" type="java.lang.String"> <generator class="uuid.hex"></generator> </id>
在执行保存时报错:将字符串uniqueidentifier 时失败。
三、解决方案:
将映射文件中ID的增长方式修改为“assigned”,在程序中赋值。
/*映射文件*/ <id name="id" column="ID" type="java.lang.String"> <generator class="assigned"></generator> </id> /*赋值代码*/ UUID uuid = java.util.UUID.randomUUID(); object.setId(uuid.toString); this.save(object);
附:创建表的语句
CREATE TABLE tableName
(
ID UNIQUEIDENTIFIER,
--省略其他代码
);
补充知识:SQLServer中uniqueidentifier数据类型理解
uniqueidentifier可以理解为全局唯一标示符(GUID),可以使用newid函数初始化值,将字符串常量转换为如下形式(xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx,其中每个 x 是 0-9 或 a-f 范围内的一个十六进制的数字)。
例如,6F9619FF-8B86-D011-B42D-00C04FC964FF 即为有效的 uniqueidentifier 值。
比较运算符可与 uniqueidentifier 值一起使用。然而,排列并非通过比较两个值的位模式来实现。允许对 uniqueidentifier 值执行的操作只有比较 (=, <>, <, >, <=, >=) 和检查 NULL(IS NULL 和 IS NOT NULL)。
不允许使用其它算术运算符。所有的列约束及属性(IDENTITY 除外)均允许用于 uniqueidentifier 数据类型。
declare @myid uniqueidentifier set @myid=newid() print 'Value of @myid is '+cast(@myid as varchar(255))
每次运行以上程序返回不同的uniqueidentifier
uniqueidentifier 数据类型不象IDENTITY 属性那样为新插入的行自动生成新的ID。
为了得到新的 uniqueidentifier 值,表必须具有一个指定 NEWID 函数的 DEFAULT 子句,或使用 NEWID 函数的 INSERT 语句:
CREATE TABLE MyUniqueTable
(UniqueColumn UNIQUEIDENTIFIER DEFAULT NEWID(),
Characters VARCHAR(10) )
GO
INSERT INTO MyUniqueTable(Characters) VALUES ('abc')
INSERT INTO MyUniqueTable VALUES (NEWID(), 'def')
GO
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
pymssql包是Python语言用于连接SQL Server数据库的驱动程序(或者称作DB API),它是最终和数据库进行交互的工具。SQLAlchemy包就是利用pymssql包实现和SQL Server数据库交互的功能的。
今天给大家分享的是关于高并发下的幂等性的内容,很多朋友可能对于幂等性不是很了解,下面我们先来看看什么是幂等性及幂等性的作用,然后我们再了解保证高并发下的幂等性的方案。
本文详细讲解了SQL Server中聚合函数的用法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
SQL Server常见的问题主要是SQL问题造成,常见的主要是CPU过高和阻塞。关于SqlServer异常处理常用步骤有哪些呢?大家了解吗?下面小编通过本篇文章给大家介绍SqlServer异常处理常用步骤,感兴趣的朋友就继续往下看吧。
sql server 2012 filetable有哪些功能?FileTable是基于FILESTREAM的一个特性,本文我们就来简单的了解一下FileTable,它的功能有以下这些:
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008