sql server保存对象时:将字符串转换成uniqueidentifier 时失败

sql server保存对象时:将字符串转换成uniqueidentifier 时失败_第1张图片

一、 背景介绍

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;
}

 



在执行保存时报错:将字符串uniqueidentifier 时失败。

三、解决方案:

将映射文件中ID的增长方式修改为“assigned”,在程序中赋值。

/*映射文件*/


assigned
">

/*赋值代码*/

UUID uuid = java.util.UUID.randomUUID();
object.setId(uuid.toString);

this.save(object);

附:创建表的语句

CREATE TABLE tableName
    (
        ID UNIQUEIDENTIFIER,
        --省略其他代码
    );

 

你可能感兴趣的:(sql server保存对象时:将字符串转换成uniqueidentifier 时失败)