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

Joe*_*eky 54 azure azure-elastic-scale azure-sql-database

我有一个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的数据.

Ada*_*Dev 53

更新:

根据Illuminati的评论和回答,情况已经改变,因为这个答案最初被接受,现在支持跨数据库查询,按照https://azure.microsoft.com/en-us/blog/querying-remote-databases-在-天青-SQL分贝/

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

  • 投票支持http://feedback.windowsazure.com/forums/217321-sql-database/suggestions/402636-cross-database-reference (5认同)
  • 现在支持此功能.https://azure.microsoft.com/en-us/blog/querying-remote-databases-in-azure-sql-db/ (4认同)
  • 这仍然是这样吗?:○ (3认同)

Sil*_*mra 9

Azure SQL DB此时正在预览弹性数据库查询功能,这将有助于您在Azure SQL DB中查询某些限制.您可以在此处获取有关此功能的详细信息.