smhy8187

 

asp.net 获取插入记录的ID

asp.net 获取插入记录的ID
2006年09月16日 星期六 下午 10:08
你的sql语句
string  SqlStr=@"insert  into    table(……)values(……)      select  SCOPE_IDENTITY()    as  'myNewId'";
执行sql
SqlDataReader  myDr=用ExecuteReader方法执行你的SQL语句
获得ID
myDr.GetValue(0).ToString()

注:
/*  对于想要得到一个表中的最后一个插入操作所产生的ID的最好用IDENT_CURRENT('TBName')*/
INSERT  INTO  table(field1,field2,...)  VALUES("field1Value","field2Value",...)  SELECT  IDENT_CURRENT('recordID')  as  newIDValue

/*对于马上使用的刚才插入的新记录ID用SCOPE_IDENTITY()是最合适的*/
INSERT  INTO  table(field1,field2,...)  VALUES("field1Value","field2Value",...)  SELECT  SCOPE_IDENTITY()  as  newIDValue

/*对于想要得到一系列的操作中最后得到的那个自增的ID最好用@@IDENTITY*/
INSERT  INTO  table(field1,field2,...)  VALUES("field1Value","field2Value",...)  SELECT  @@IDENTITY  as  newIDValue

Select @@IDENTITY 是获得最新插入的那張表的最新identity值, 如果同时插入两个表, 会返回最后一个表的identity值, 如果并发插入, 则返回最新那次插入的identity, 可能会有冲突的, 用 IDENT_CURRENT 好一点

posted on 2007-03-15 22:11  new2008  阅读(444)  评论(0编辑  收藏  举报

导航