SQL中得到刚刚插入的数据的id
来源:互联网 发布:ubuntu 移除源 编辑:程序博客网 时间:2024/05/17 02:52
在多用户交替插入数据的情况下max(id)显然不能用
1、LAST_INSERT_ID是基于Connection的,只要每个线程都使用独立的 Connection对象,LAST_INSERT_ID函数将返回该Connection对AUTO_INCREMENT列最新的insert or update*作生成的第一个record的ID。这个值不能被其它客户端(Connection)影响,保证了你能够找回自己的 ID 而不用担心其它客户端的活动,而且不需要加锁LAST_INSERT_ID只返回插入的第一条记录产生的值,如同时插入‘aaa’,'bbb','ccc'返回‘aaa’的值
2、SQL Server 2000中,有三个比较类似的功能:SCOPE_IDENTITY、IDENT_CURRENT 和 @@IDENTITY
参考http://www.cnblogs.com/hnNet/articles/1455071.html
SQL Server 2000中,insert数据的时候返回自动编号的id,有三种方法实现SCOPE_IDENTITY、IDENT_CURRENT 和 @@IDENTITY,它们都返回插入到 IDENTITY 列中的值。
IDENT_CURRENT :返回为任何会话和任何作用域中的特定表最后生成的标识值。IDENT_CURRENT 不受作用域和会话的限制,而受限于指定的表。IDENT_CURRENT 返回为任何会话和作用域中的特定表所生成的值。
@@IDENTITY: 返回为当前会话的所有作用域中的任何表最后生成的标识值。
SCOPE_IDENTITY :返回为当前会话和当前作用域中的任何表最后生成的标识值
SCOPE_IDENTITY 和 @@IDENTITY 返回在当前会话中的任何表内所生成的最后一个标识值。但是,SCOPE_IDENTITY 只返回插入到当前作用域中的值;@@IDENTITY 不受限于特定的作用域。
使用示例:
set @NewID=SCOPE_IDENTITY()
set @NewID=@@IDENTITY
set @NewID=IDENT_CURRENT('表名')
例如,有两个表 T1 和 T2,在 T1 上定义了一个 INSERT 触发器。当将某行插入 T1 时,触发器被激发,并在 T2 中插入一行。此例说明了两个作用域:一个是在 T1 上的插入,另一个是作为触发器的结果在 T2 上的插入。假设 T1 和 T2 都有 IDENTITY 列,@@IDENTITY 和 SCOPE_IDENTITY 将在 T1 上的 INSERT 语句的最后返回不同的值。@@IDENTITY 返回插入到当前会话中任何作用域内的最后一个 IDENTITY 列值,该值是插入 T2 中的值。SCOPE_IDENTITY() 返回插入 T1 中的 IDENTITY 值,该值是发生在相同作用域中的最后一个 INSERT。如果在作用域中发生插入语句到标识列之前唤醒调用 SCOPE_IDENTITY() 函数,则该函数将返回 NULL 值。而IDENT_CURRENT('T1') 和 IDENT_CURRENT('T2') 返回的值分别是这两个表最后自增的值。
- sql中得到刚刚插入的数据的id
- sql中得到刚刚插入的数据的id
- SQL中得到刚刚插入的数据的id
- 得到刚刚插入数据库数据的主键ID
- mysql学习-得到刚刚插入的主键id
- sql语句如何在insert一条数据后直接返回刚刚插入的数据的ID
- sql语句如何在insert一条数据后直接返回刚刚插入的数据的ID
- sql 刚刚插入,引用插入记录的ID
- SQL Server 2005返回刚刚插入的数据条目id值
- Sql Server中如何取得刚刚插入的自增长的id值
- 取得刚刚插入sql server自增长的id值
- Lravel中获取刚刚插入的记录的id
- Mybatis + MySQL 得到刚刚插入的主键
- MySQL中如何获取下一条插入的自增ID 或 刚刚插入的id
- JDBC中sql插入数据得到主键的方法
- 读取刚刚插入纪录的id
- 在oracle中插入一条数据,id自动增长,插入之后怎么得到这个id(sequence的使用)
- 在oracle中插入一条数据,id自动增长,插入之后怎么得到这个id(sequence的使用)
- ajax学习笔记二
- CF 337E(Divisor Tree-枚举树节点的父亲)
- 链表操作的测试
- 序列化之:事件不可序列化
- CNGI高校驻地网IPv6用户数量排名
- SQL中得到刚刚插入的数据的id
- 块I/O层(I/O调度)
- HDU4148+找规律
- 二分图匹配
- Android设置网络图片为手机背景图片的方法
- display:inline-block的运用
- 找工作经历3
- U-Boot移植过程中的运行地址和装载地址的区别
- SQL Server的增、删、改、查以及系统函数