【发布时间】:2011-10-11 14:24:32
【问题描述】:
在 SQL Server 2005 中,我使用存储过程将一行插入到表中,并且我想在插入该行后立即获取新的主键值。我正在使用以下方法在插入行后获取主键值
Create Proc Sp_Test
@testEmail varchar(20)=null,-- Should be Unique
@testName varchar(20)=null -- Should be Unique
as
begin
insert into tableTest (testUserEmail,testUserName)values (@testValue,@testName)
select MAX(ID) from tableTest --ID is Primary Key
--或
select ID from tableTest where testUserEmail =@testValue and testUserName = @testName
--或
select SCOPE_IDENTITY() as ID
end
请建议我哪种方法更适合执行所描述的任务。
【问题讨论】:
标签: sql-server-2005 stored-procedures primary-key insert-update