无法在SQL Azure中的数据库之间进行查询

时间:2012-07-01 19:30:13

标签: azure azure-sql-database azure-elastic-scale

我有一个SQL Azure数据库服务器,我需要在数据库之间进行查询,但无法弄清楚如何实现这一目标。

以下是我的数据库的结构:

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

Database.A 中,我有一个需要从 Database.B 检索数据的存储过程。通常,我会像SELECT * FROM [Database.B].[dbo].[MyTable]那样引用数据库,但在SQL Azure中似乎不允许这样做。

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中的数据。

3 个答案:

答案 0 :(得分:49)

更新:

根据Illuminati的评论和回答,情况已经发生变化,因为此答案最初被接受,现在支持跨https://azure.microsoft.com/en-us/blog/querying-remote-databases-in-azure-sql-db/

的跨数据库查询

原始答案(2013): SQL Azure不支持跨数据库查询。这意味着您需要组合数据库以首先防止需要,或者单独查询两个数据库并基本上加入应用程序中的数据。

答案 1 :(得分:21)

答案 2 :(得分:9)

Azure SQL DB此时正在预览弹性数据库查询功能,这将有助于您在Azure SQL数据库中进行查询,但存在一些限制。您可以获得有关功能here的详细信息。