microsoft - porta azure
No se puede consultar entre bases de datos en SQL Azure (3)
Tengo un servidor de base de datos SQL Azure y necesito consultar entre las bases de datos pero no puedo encontrar la manera de lograrlo.
Aquí está la estructura de mis bases de datos:
- Server.X
- Database.A
- Database.B
- Database.C
En Database.A tengo un procedimiento almacenado que necesita recuperar datos de Database.B . Normalmente, haría referencia a la base de datos como SELECT * FROM [Database.B].[dbo].[MyTable]
pero esto no parece estar permitido en 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.
¿Hay alguna manera de hacer esto en el final de la base de datos?
En la versión final, las bases de datos A y C necesitarán datos de la base de datos B.
Azure SQL DB está haciendo una vista previa de la función Elastic Database Query en este momento que lo ayudará a realizar consultas entre los SQL DB de Azure con algunas limitaciones. Puede obtener información detallada sobre la función here .
Las consultas cruzadas de bases de datos ahora son compatibles con SQL Azure
https://azure.microsoft.com/en-us/blog/querying-remote-databases-in-azure-sql-db/
Actualizar:
Según el comentario y la respuesta de Illuminati, la situación ha cambiado desde que esta respuesta fue aceptada originalmente y ahora hay soporte para consultas cruzadas de bases de datos según https://azure.microsoft.com/en-us/blog/querying-remote-databases-in-azure-sql-db/
Respuesta original (2013): las consultas cruzadas de la base de datos no son compatibles con SQL Azure. Lo que significa que necesita combinar las bases de datos para evitar la necesidad en primer lugar, o consultar ambas bases de datos de forma independiente y, básicamente, unir los datos en su aplicación.