2017-07-19 5 views
1

2つのデータベースを持つSQL Azureデータベースサーバーがあり、最初のデータベースのテーブルから別のデータベースの別のテーブルにレコードを挿入する必要があります。両方のデータベースは、同じセキュリティ設定/ログインで同じサーバー上にあります。1つのテーブルのレコードを他のデータベースの別のテーブルに挿入できません

私が試してみました:私はSSMSでSQLを実行すると

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

は私が手:

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データベースでは、読み取り専用の弾性クエリを除きます。 2つの別々の操作を実行する必要があります。

詳細SQL ServerとSQLデータベースのT-SQLの違いは、hereです。

弾性クエリに関する情報:here

+0

「2つの別個の操作」とはどういう意味ですか? – Manu

+2

意味、最初にデータベースAに対してクエリを実行する必要があります。次に、データベースBへの挿入を行います。別の接続文字列/データベースコンテキストを使用する。前述のように、1つのクエリで2つのデータベースをブリッジすることはできません(クレデンシャルは同じです)。 –

+0

データベースAに対して最初にクエリを実行し、その結果を一時的にどこか(?)保存し、その結果をデータベースBのテーブルにコピーします。 – Manu

関連する問題