首页 > 解决方案 > 我的 SQL 链接服务器的名称已更改。我有一堆使用旧名称的查询和存储过程。有什么我可以做的吗?

问题描述

我有一些这样的代码

    select *
    FROM [ServerName].[theserver].[dbo].[OrderWrappers]

我的服务器名称已更改,因此现在上述内容不起作用,而是

    select *
    FROM [NEWServerName].[theserver].[dbo].[OrderWrappers]

我在许多不同的地方以及许多不同的作业和存储过程中访问该表。

除了进入我的每个存储过程并更改代码之外,我还能做些什么吗?

标签: sqlsql-serverstored-procedureslinked-server

解决方案


嗯,是的,也不是。

您将需要通过代码来更改代码。但是,您可以更改代码以使用同义词而不是硬编码引用。然后,下次您更改服务器时,更新代码将非常容易。

或者代替同义词,您可以创建一个单独的项目,其中包含删除服务器上表的视图并使用这些视图。这些也很容易更新。

但是,这两种方法都需要修改现有代码。但是他们会帮助你为将来编写代码,这样你将来就不会遇到这个问题。


推荐阅读