mybatis-uniqueidentifier和usegeneratedkeys未按预期工作

f87krz0w  于 2021-06-29  发布在  Java
关注(0)|答案(0)|浏览(242)

表格:

CREATE TABLE [dbo].[People] 
(
    PersonId UNIQUEIDENTIFIER DEFAULT NEWID() PRIMARY KEY,
    Name VARCHAR(255) NOT NULL
);

Map器:

<insert id="insert" parameterType="Person" useGeneratedKeys="true" keyColumn="PersonId" keyProperty="personId">
    INSERT INTO [dbo].[People]
    (
        Name
    )
    VALUES
    (
        #{name}
    )
</insert>

非常简单:
我有一个sqlserver2008db,它有一个简单的表,其中包含一个guid作为主键。我想返回任何插入数据库的person对象的guid。但是,无论出于什么原因,当我查看person对象的personid时,它都返回null。
现在-如果我把personid改成identifier/long/bitint,这个方法就完全有效了。它显然与guid有关,但我不知道为什么。这是mybatis的问题吗?
项目:
Spring套2.3
mybatis Spring 2.1.1
sql server驱动程序8.4.1.jre11

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题