(4.53)sql server自增列identity,sql server獲取自增列值
阿新 • • 發佈:2021-01-21
【1】概念
【1.1】IDENT_CURRENT('tab_name')
返回為任何會話和任何作用域中的特定表最後生成的標識值。
IDENT_CURRENT 不受作用域和會話的限制,而受限於指定的表。
【1.2】@@IDENTITY
返回為當前會話的所有作用域中的任何表最後生成的標識值。
【1.3】SCOPE_IDENTITY()
返回為當前會話和當前作用域中的任何表最後生成的標識值 SCOPE_IDENTITY() 和 @@IDENTITY 返回在當前會話中的任何表內所生成的最後一個標識值。
但是,SCOPE_IDENTITY 只返回插入到當前作用域中的值;@@IDENTITY 不受限於特定的作用域。
【2】案例
if object_id('ttest1') is not null drop table ttest1; create table ttest1(id int identity(1,1),num int); insert into ttest1 values(1); select SCOPE_IDENTITY(),IDENT_CURRENT('ttest1'),@@IDENTITY
insert into ttest1 values(1); select SCOPE_IDENTITY(),IDENT_CURRENT('ttest1'),@@IDENTITY