2013-07-30 63 views
2

我有兩個數據庫; 1是用於日常數據輸入的實時數據庫,另一個是舊數據的檔案數據庫。在多個數據庫中創建視圖

如何創建從兩個數據庫獲取數據的視圖?

三個表都涉及... database1.dbo.table並在同一個數據庫database1.dbo.tran1,並database_archived.dbo.table1

Create VIEW [dbo].[VW_Table_ALL] 
AS 
    SELECT * FROM database1.dbo.table1 
    UNION ALL 
    SELECT * FROM database_archived.dbo.table1 as Data INNER JOIN 
       database1.dbo.tran1 as Tran ON Data.Tran_id = Tran.Tran_Id 

GO 
+0

我的觀點能夠基於上面寫的創建? – M8CC1

回答

7

不知道,如果你需要一個UNION或加入,但在這兩種情況下,你可以只使用一個三在其他數據庫中的對象的部分名稱:

USE database1; 
GO 
CREATE VIEW dbo.MyView 
AS 
    SELECT columns FROM dbo.LocalTable 
    UNION ALL 
    SELECT columns FROM database2.dbo.RemoteTable; 
GO 
+1

是否可以在MySQL主機上執行此操作?我怎麼能在視圖中喜歡這兩個數據庫服務器? – iGbanam

+0

我有幾乎相同的情況,但在同一主機上的不同用戶。這怎麼可行?谷歌告訴我將所有數據庫合併爲一個,但在我的情況下它不可行。 –