我正在使用SQL Server Management Studio。我有一个名为faculty的表,其属性为id
,Name
和dean
。我想在此表中获取最后插入的记录ID。
例如:
id Name dean
1 abc xyz
2 efg sss
3 ert yui
我只想获得第3名,而不是第3名。 最后插入的id在这种情况下是3。
答案 0 :(得分:3)
您可以使用存储过程中的SCOPE_IDENTITY()
来获取最后插入的记录ID。
SELECT SCOPE_IDENTITY() :- It will returns the last identity value inserted into an
identity column in the same scope.
SELECT @@IDENTITY :- @@IDENTITY will return the last identity value entered
into a table in your current session.
SELECT IDENT_CURRENT(‘tablename’) :- IDENT_CURRENT is not limited by scope and
session; it is limited to a specified table.
还有其他选项,例如
1. Select Top 1 id From Table Order by id desc
2. SELECT max(id) FROM table
参考msdn http://msdn.microsoft.com/en-us/library/ms190315.aspx 和 http://blog.sqlauthority.com/2007/03/25/sql-server-identity-vs-scope_identity-vs-ident_current-retrieve-last-inserted-identity-of-record/
答案 1 :(得分:1)
你可以使用 @@ IDENTITY,SCOPE_IDENTITY,IDENT_CURRENT