首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用SQL Server从跨服务器插入获取上一个Id

使用SQL Server从跨服务器插入获取上一个Id
EN

Stack Overflow用户
提问于 2009-05-05 22:03:57
回答 2查看 2.3K关注 0票数 3

我正在运行跨服务器插入

代码语言:javascript
复制
INSERT INTO server.database.dbo.table (Field) VALUES('test')

然后,我需要获取最后一次插入的id。但是,当我运行scope_identity函数时,我没有从外部服务器获得最新的id。

代码语言:javascript
复制
SELECT @ID=SCOPE_IDENTITY()

如何从跨服务器插入中检索最后一个id?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-05-05 22:08:46

来自http://msdn.microsoft.com/en-us/library/ms187342.aspx

@@IDENTITY函数的作用域是执行该函数的本地服务器上的当前会话。此函数不能应用于远程或链接服务器。若要在其他服务器上获取标识值,请在该远程服务器或链接服务器上执行存储过程,并使该存储过程(在远程服务器或链接服务器的上下文中执行)收集标识值,并将其返回到本地服务器上的调用连接。

票数 4
EN

Stack Overflow用户

发布于 2009-05-05 22:09:50

我确信您必须将INSERT包装在远程链接服务器上的存储过程中,并让该存储过程返回标识列值。

参考:http://msdn.microsoft.com/en-us/library/ms187342.aspx

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/827118

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档