在插入一条记录后 取得自动增长ID

table1结构
id    content
int    navrchar(50)
id 为自动增长

1、
insert into table1 (content)
values ('aaaa')
select @@identity
@@identity返回的是当前事务最后插入的标识值,对于同时插入多个表的数据不利

2、
insert into table1 (content)
values ('aaaa')
select IDENT_CURRENT(‘table1')
IDENT_CURRENT
()返回指定表的最后标识值

3、
insert into table1 (content)
values ('aaaa')
SELECT   scope_identity() 
scope_identity() 
我们无论是添加触发器还是运行并行插入,得到的始终是当前事务的标识值
可以通过 ....
PrepareCommand(cmd, connection, null, SQLString, cmdParms);
                        object obj = cmd.ExecuteScalar();
来取得这个自动增长的值 ,即执行这条插入语句,返回它的第一个记录。

posted @ 2009-08-12 11:30  Vihone  阅读(443)  评论(0编辑  收藏  举报