73

SQL Azureデータベースサーバーがあり、データベース間でクエリを実行する必要がありますが、これを実行する方法がわかりません。

これが私のデータベースの構造です:

  • Server.X
    • Database.A
    • Database.B
    • Database.C

Database.Aには、Database.Bからデータを取得する必要のあるストアドプロシージャがあります。通常、私はデータベースを次のように参照しますSELECT * FROM [Database.B].[dbo].[MyTable]が、これはSQLAzureでは許可されていないようです。

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

データベース側でこれを行う方法はありますか?

最終バージョンでは、データベースAとCの両方にデータベースBのデータが必要になります。

4

3 に答える 3

63

アップデート:

イルミナティのコメントと回答によると、この回答が最初に受け入れられてから状況が変わり、https://azure.microsoft.com/en-us/blog/querying-remote-databases-に従ってクロス データベース クエリがサポートされるようになりました。 in-azure-sql-db/

元の回答 (2013): クロス データベース クエリは SQL Azure ではサポートされていません。つまり、データベースを組み合わせてそもそも必要性を防ぐか、両方のデータベースを個別にクエリして、基本的にアプリケーション内のデータを結合する必要があります。

于 2012-07-01T19:38:27.517 に答える
10

Azure SQL DB は、この時点でエラスティック データベース クエリ機能をプレビューしています。これは、いくつかの制限付きで Azure SQL DB 間でクエリを実行するのに役立ちます。この機能に関する詳細情報は、こちらで入手できます。

于 2015-07-08T05:39:11.907 に答える