zoukankan      html  css  js  c++  java
  • [转帖]如何准确高效的获取数据库新插入数据的主键id

    原文地址

    例如我们新建了一张表UserInformation,字段如下Id,为主键,自增,其它字段Name,Pwd,Email

    然后我们来执行一个新增插入操作:

    insert into UserInformation
    (Name,Pwd,Email) values('小明','123','111')

    我们想在新增插入数据的时候获取到插入这条数据的主键的值是多少,

    解决的方法有两种:

    1、一种是直接输入某个字段,然后查询,代码如下:

    insert into UserInformation
    (Name,Pwd,Email) values('小张','123','111') 
    select @@identity

    插入后获取,但是这种并不是完全准确的

    insert into[Test1].[dbo].[UserInformation]
    (Name,Pwd,Email) values('小张','123','111') 
    select @@identity

    涉及到数据库锁,如果调整了数据库锁,当数量级别特别大,有大量数据并发插入的时候可能会有误差。

    2、另一种方法是在插入的同时进行输出,代码如下:

    insert into UserInformation
    (Name,Pwd,Email) output inserted.Id values('小明','123','111')

    除了主键,也可以输出别的字段,准确高效。

    推荐使用第二种

    原文地址

  • 相关阅读:
    angular2 如何使用animate实现动画效果
    angular2+ 组件中用@import进来的css不起作用
    ReentrantLock & AQS
    常用JDK命令
    分布式缓存
    持续交付
    持续部署
    持续集成
    领域驱动设计简介
    spring boot 整合JPA bean注入失败
  • 原文地址:https://www.cnblogs.com/yanshanshuo/p/10249908.html
Copyright © 2011-2022 走看看