mybatis 针对SQL Server 的 主键id生成策略

SQL Server中命令: select newId()  ,可以得到SQL server数据库原生的UUID值,因此我们可以将这条指令写到 Mybatis的主键生成策略配置selectKey中。

如下:

在 mapper.xml 类型映射配置文件中

<insert id="insert" parameterType="com.hqdl.xiaoyi.bean.SpUser">
  	<selectKey keyProperty="id" resultType="String" order="BEFORE">    
        select newId()    
    </selectKey>  
    insert into sp_user_list (id, name, full_name, 
      password, category, user_type, 
      company_id, depart_id, code, 
      locked, wrong_pwd_count, last_login_time, 
      lock_reason, create_user_id, create_person_name, 
      create_time, deleted)
    values (#{id,jdbcType=VARCHAR}, #{name,jdbcType=VARCHAR}, #{fullName,jdbcType=VARCHAR}, 
      #{password,jdbcType=VARCHAR}, #{category,jdbcType=VARCHAR}, #{userType,jdbcType=VARCHAR}, 
      #{companyId,jdbcType=VARCHAR}, #{departId,jdbcType=VARCHAR}, #{code,jdbcType=VARCHAR}, 
      #{locked,jdbcType=CHAR}, #{wrongPwdCount,jdbcType=INTEGER}, #{lastLoginTime,jdbcType=VARCHAR}, 
      #{lockReason,jdbcType=VARCHAR}, #{createUserId,jdbcType=VARCHAR}, #{createPersonName,jdbcType=VARCHAR}, 
      #{createTime,jdbcType=VARCHAR}, #{deleted,jdbcType=CHAR})
  </insert>

  得到插入结果

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏杨建荣的学习笔记

ORA-00439的解决(笔记93天)

今天用gc配置了stream后,重启数据库后发现有以下的问题 SQL> startup ORA-00439: feature not enabled: Real...

27510
来自专栏乐沙弥的世界

Oracle 联机重做日志文件(ONLINE LOG FILE)

--=========================================

652
来自专栏杨建荣的学习笔记

ORACLE数据文件名导致的奇怪问题 (51天)

今天创建了一些表空间,准备做data guard来看看效果。 为了方便起见,我用gridcontrol来做,主库也开了Omf,省去了好多步骤。 一路点下来,就等...

3094
来自专栏杨建荣的学习笔记

有关Oracle role的总结

oracle的role算是对sys privilege 和object privilege的打包。 今天深入的测试了下,还算有不少的东西。 role不是sche...

3576
来自专栏HansBug's Lab

3892: [Usaco2014 Dec]Marathon

3892: [Usaco2014 Dec]Marathon Time Limit: 10 Sec  Memory Limit: 128 MB Submit: 1...

3386
来自专栏HansBug's Lab

1619: [Usaco2008 Nov]Guarding the Farm 保卫牧场

1619: [Usaco2008 Nov]Guarding the Farm 保卫牧场 Time Limit: 5 Sec  Memory Limit: 64 ...

3236
来自专栏SpringBoot

mybatis 批量更新问题

511
来自专栏乐沙弥的世界

PL/SQL 包编译时hang住的处理

       最近PL/SQL包在编译时被hang住,起初以为是所依赖的对象被锁住。结果出乎意料之外。下面直接看代码演示。

756
来自专栏数据和云

DBA生存警示:保护现场不要让事情更糟

张乐奕 云和恩墨副总经理 Oracle ACE 总监 ITPUB Oracle数据库管理版版主、Oracle高可用版版主、ACOUG联合创始人 今天收到一个发过...

28612
来自专栏ionic3+

MyBatis报错 Parameter 'arg0' not found

在早期,参数没做注解时默认是按顺序获取,以0、1等为索引,所以Mapper是这样写的:

1613

扫码关注云+社区