2012-05-04 62 views
1

我在SQL Server中有兩個不同的數據庫,可以說db1和db2,而且我需要在它們之間加入數據,但是使用只能訪問db1的應用程序。在SQL Server中作爲一個訪問各種數據庫

所以,我想到了兩種可能性:第一種是在db 1中創建一個從db 2讀取數據的視圖。第二個是創建某種邏輯或虛擬數據庫,類型爲db3,所以我可以通過db3訪問db1和db2。可能嗎?

打開其他建議。

回答

1

該視圖是一個不錯的選擇,我沒有看到需要「虛擬」分貝。 使用KISS原則。

+0

我喜歡查看選項。我唯一擔心的是訪問db2的視圖中的數據庫名稱需要修復。當我在SW軟件公司工作時,數據庫名稱在一些客戶之間改變,在這種情況下,我們不得不手動改變視圖。除非有一個竅門,我不知道! –

0

「邏輯或虛擬數據庫」? 沒有必要。假設數據庫在同一臺服務器上,一個視圖,甚至直接選擇像select * from db2.dbo.table將做伎倆

如果不是,你需要在DB1上創建一個鏈接服務器指向DB2

0

是的,創建一個存儲過程並執行「聯合/連接」SQL查詢。

在SQL查詢中的「從」條款,你需要寫的「從[數據庫名]。[架構] [表]」

您需要託管在數據庫中的存儲過程,您的應用程序有權訪問。