2015-08-18 88 views
0

我已經繼承了一個數據庫,其中包含大約150個存儲過程,該過程在同一臺服務器上引用了數據庫對象。它運行良好,直到數據庫被移動到另一臺服務器,現在程序無法找到這些對象。整個數據庫找到所有程序中的替換

例如:什麼是常見的就是[數據庫]。[dbo]。[對象],當應該發生什麼是[服務器]。[數據庫]。[dbo]。[對象],對於這些引用不是休息一下。

我目前使用

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

要使用到數據庫的引用找到特效,並有可能做每個數據庫匹配一個REPLACE

但是有沒有簡單的方法?

+0

你爲什麼不移動在數據庫中移動的程序? – Juan

+0

這種情況不會發生 – Sauron

+0

也許您可以創建與表格名稱相同的視圖列表,並在視圖中添加服務器地址的全名。我不知道這將如何執行,但它的工作。 – Juan

回答

0

您可以考慮使用SYNONYM

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

感謝這些信息,我沒有創建這個問題,但這些信息很有用,我學到了一些東西 – Juan

相關問題