2017-07-19 39 views
1

我有一個SQL Azure數據庫服務器與2個數據庫,我需要從第一個數據庫的表中插入記錄到另一個數據庫中的另一個表。兩個數據庫都位於同一臺服務器上,具有相同的安全設置/登錄名。不能從一個表插入記錄到其他數據庫中的另一個表

我曾嘗試:

INSERT INTO DatabaseB.dbo.TableB (ColumnA, ColumnB) 
SELECT TableA.ColumnA, TableA.ColumnB 
FROM DatabaseA.dbo.TableA 

當我運行SQL與SSMS我得到:

Msg 40515, Level 15, State 1, Line 16 
Reference to database and/or server name in 'DatabaseB.dbo.TableB ' is not supported in this version of SQL Server. 

回答

3

跨數據庫的查詢,如你試圖做一個不被支持與SQL數據庫,除了只讀彈性查詢。你需要執行兩個單獨的操作。

具體SQL Server和SQL數據庫之間的T-SQL差別爲here

關於彈性查詢的信息:here

+0

「兩個獨立的操作」是什麼意思? – Manu

+2

意思是,你需要先對數據庫A進行查詢,然後對數據庫B執行插入操作。獨立。使用單獨的連接字符串/數據庫上下文。如上所述,您無法在單個查詢中橋接兩個數據庫(不管憑據是否相同)。 –

+0

首先對數據庫A執行查詢,將結果暫時存儲在「某處」(?),然後將結果複製到數據庫B中的表中。正確? – Manu

相關問題