如果我在Database1上創建了存儲過程。並且該查詢正在訪問Database2。
生產環境沒有相同的開發環境的數據庫名稱。
現在我必須檢查每個過程才能將Database2更改爲Database_Prod2。如何訪問不同的數據庫,而無需在查詢中編寫數據庫名稱
這很容易出錯。我如何避免在查詢中使用數據庫名稱。或者我如何避免這種部署問題,因爲數據庫名稱必須不同?
SELECT *
FROM [dbo].[MyTable] tab1
INNER JOIN [DB2].[dbo].[MyOtherTable] tab2 ON tab1.ID = tab2.ID
應改爲
SELECT *
FROM [dbo].[MyTable] tab1
INNER JOIN [DB_Prod2].[dbo].[MyOtherTable] tab2 ON tab1.ID = tab2.ID
這取決於你如何部署存儲過程,但你可以使用腳本變量來指定不同的數據庫,表名稱等:http://technet.microsoft.com/en-us/library/ms188714.aspx – Jordan