我有一个 SQL Azure 数据库服务器,我需要在数据库之间进行查询,但不知道如何完成此操作。
这是我的数据库的结构:
- Server.X
- 数据库.A
- 数据库.B
- 数据库.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 中的数据。
最佳答案
更新:
根据 Illuminati 的评论和回答,自从这个答案最初被接受以来,情况已经发生了变化,现在按照https://azure.microsoft.com/en-us/blog/querying-remote-databases-in-azure-sql-db/支持跨数据库查询。
原始答案(2013): SQL Azure 不支持跨数据库查询。这意味着您需要组合数据库以防止出现这种需要,或者独立查询两个数据库并基本上将数据加入您的应用程序中。
关于azure - 无法在 SQL Azure 中的数据库之间查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11284998/