表的字段ID为自增列,查询刚插入的记录的ID,有两种可行的方法。
1)insert into tbl values(...)
select @@Identity
2)insert into tbl output inserted.ID values(...)
上面两种方法都可以查出刚插入的记录的ID。如果是插入一条记录,则两种方法都OK;但是如果是插入多条记录,select @@Identity查询的是最后一条记录对应的ID,也就是查询的结果只有一个值。而output Inserted.ID查询的是每一条记录对应的ID,查询的结果是多个值,另Inserted.其它字段 可以查询出刚插入的记录的其他列,数据类型不仅仅是int,自增。
另还有一种方法,不过不建议使用。就是insert into tbl values(...) select max(ID) from tbl。
posted on
浙公网安备 33010602011771号