Pra*_*ana 11 sql database sql-server identity sql-server-2005
我有一个如下查询
declare @str_CustomerID int
Insert into IMDECONP38.[Customer].dbo.CustomerMaster
( CustomerName , CustomerAddress , CustomerEmail , CustomerPhone )
values ( ‘werw12e’ , ‘jkj12kj’ , ‘3212423sdf’ , ‘1212121?
)
select @str_CustomerID= scope_identity()
Run Code Online (Sandbox Code Playgroud)
执行后,它在我的参数中返回null.
我想获得身份的价值.我怎样才能做到这一点?
这里的主要问题是"IMDECONP38" - 我使用的服务器名称.如果我删除它,我可以在我的参数中获取身份的值.
当您使用"IMDECONP38"时,您会破坏SCOPE_IDENTITY,因为
如果在SQL Server 2005上,请尝试OUTPUT子句,但我不确定它如何用于链接服务器调用
Insert into IMDECONP38.[Customer].dbo.CustomerMaster
OUTPUT INSERTED.ID --change as needed
( CustomerName , CustomerAddress , CustomerEmail , CustomerPhone )
values ( ‘werw12e’ , ‘jkj12kj’ , ‘3212423sdf’ , ‘1212121?
)
Run Code Online (Sandbox Code Playgroud)
编辑:Prutswonder首先说:在链接服务器上使用存储过程