整个DB在所有程序中找到替换

时间:2015-08-18 19:00:29

标签: sql-server stored-procedures replace

我继承了一个db,它包含大约150个存储过程,这些过程在同一台服务器上引用了db对象。它工作正常,直到数据库被移动到另一台服务器,现在程序找不到这些对象。

例如:什么是常见的只是[数据库]。[dbo]。[对象],当应该发生的是[服务器]。[数据库]。[dbo]。[对象],对于这些引用不是断裂。

我目前正在使用

select [definition] into #test from sys.sql_modules where definition like '%(db name)%'

使用对db的引用来定位proc,并且可能在每个db匹配上执行REPLACE

但是有更简单的方法吗?

1 个答案:

答案 0 :(得分:0)

您可以考虑使用SYNONYM

USE [database];
GO
CREATE SYNONYM [object] FOR [server].[database].[dbo].[object];
GO