web-dev-qa-db-fra.com

Impossible d'interroger entre les bases de données dans SQL Azure

J'ai un serveur de base de données SQL Azure et j'ai besoin d'interroger entre les bases de données, mais je n'arrive pas à comprendre comment y parvenir.

Voici la structure de mes bases de données:

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

Dans Database.A j'ai une procédure stockée qui doit récupérer les données de Database.B. Normalement, je ferais référence à la base de données comme SELECT * FROM [Database.B].[dbo].[MyTable] mais cela ne semble pas être autorisé dans 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.

Existe-t-il un moyen de le faire du côté de la base de données?

Dans la version finale, les bases de données A et C auront toutes deux besoin de données de la base de données B.

52
JoeGeeky

Mise à jour:

Selon le commentaire et la réponse d'Illuminati, la situation a changé depuis que cette réponse a été initialement acceptée et il y a maintenant un support pour les requêtes de bases de données croisées selon https://Azure.Microsoft.com/en-us/blog/querying- bases de données distantes dans Azure-sql-db /

Réponse originale (2013): Les requêtes de bases de données croisées ne sont pas prises en charge dans SQL Azure. Ce qui signifie que vous devez soit combiner les bases de données pour éviter le besoin en premier lieu, soit interroger les deux bases de données indépendamment et joindre essentiellement les données dans votre application.

51
AdaTheDev

Les requêtes entre bases de données sont désormais prises en charge dans SQL Azure

https://Azure.Microsoft.com/en-us/blog/querying-remote-databases-in-Azure-sql-db/

22
Illuminati

Azure SQL DB prévisualise actuellement la fonctionnalité Elastic Database Query qui vous aidera à interroger parmi les bases de données SQL Azure avec certaines limitations. Vous pouvez obtenir des informations détaillées sur la fonctionnalité ici .

9
Silvia Doomra