在MSSQL中添加记录后获取当前记录ID的方法:
string sqlCmd = "SET NOCOUNT ON;Insert into userdb(username,userpwd) values('"&username&"','"&userpwd&"');Select @@IDENTITY";
程序代码
string sqlCmd = "SET NOCOUNT ON;Insert into userdb(username,userpwd) values('"&username&"','"&userpwd&"');Select @@IDENTITY";
CmdObj = new SqlCommand(SqlCmd,myConnect);
myConnect.Open();
SqlReader = CmdObj.ExecuteReader();
int index = int.Parse( SqlReader[0].ToString()); //这里获得插入后在表中的序列号
此代码告诉 SQL Server 不要返回查询的行计数,然后执行 Insert 语句,并返回刚刚为这个新行创建的 IDENTITY 值。SET NOCOUNT ON 语句表示返回的记录集有一行和一列,其中包含了这个新的 IDENTITY 值。如果没有此语句,则会首先返回一个空的记录集(因为 Insert 语句不返回任何数据),然后会返回第二个记录集,第二个记录集中包含 IDENTITY 值。
此代码告诉 SQL Server 不要返回查询的行计数,然后执行 Insert 语句,并返回刚刚为这个新行创建的 IDENTITY 值。SET NOCOUNT ON 语句表示返回的记录集有一行和一列,其中包含了这个新的 IDENTITY 值。如果没有此语句,则会首先返回一个空的记录集(因为 Insert 语句不返回任何数据),然后会返回第二个记录集,第二个记录集中包含 IDENTITY 值。
.@@表示全局变量 ,Identity本来的意思就是唯一的,非重复的。
本文介绍了一种在MSSQL中插入记录后立即获取该记录ID的方法。通过使用特殊的SQL语句结合C#代码实现,确保了操作的高效性和准确性。
3177

被折叠的 条评论
为什么被折叠?



