我有一个引用链接服务器的存储过程。在整个过程的几个地方,我都有类似以下内容:
INSERT INTO [TableName]
(...Columns...)
SELECT ...Columns...
FROM [ServerName\InstanceName].[Catalogue].[dbo].[TableName]
WHERE TableNameID = @TableNameID
此过程存在于我的开发环境,测试环境和实时环境中。
问题在于该过程的每个副本都略有不同,因为每个环境的服务器名称都不同。这使得管理脚本更新的部署很麻烦。
有没有办法使该过程具有可移植性,以便每个环境都可以运行该过程的相同版本?
如果没有,我是否可以做些什么来使脚本部署不易出现错误/错误?
@JNK并不是一个坏主意,尽管有很多表,但是至少视图要比带有链接服务器引用的存储过程更容易维护。
—
2012年
@jnk,您应该做出答案。
—
HLGEM 2012年
SELECT <fields> FROM <linked server>
但在所有服务器上使用相同的视图名称以保持代码的维护