2017-10-05 11 views
0

J'ai deux instances différentes sur mon instance local de serveur de workbench et l'instance de serveur distant shopify_data, (schéma par défaut sales_report). Maintenant, je veux récupérer les données du code postal de la table dans localhost et d'autres champs qui sont dans une autre table shopify_orders dans le serveur distant shopify_data dans sales_report.mysql workbench se connecter à plusieurs bases de données

La requête ressemble à:

SELECT Name, billing_zip, Billing_Name, Billing_Address1,Billing_Address2, Lineitem_name, Created_at 
    FROM sales_report.shopify_orders 
WHERE Created_at between '2017-08-31' and '2017-09-21' and Billing_Zip in (select zip_code from zipcode); 

Il donne l'erreur:

sales_report.shopify_orders does not exists.

Comment puis-je connecter mon exemple d'hôte local avec l'instance shopify_data et obtenir des données au sein de la même requête.

Merci.

Deepak

PS: Je ne veux pas importer les shopify_orders dans l'hôte local que la valeur ne cesse de changer de façon dynamique avec chaque commande et je ne veux pas répéter l'importation

Répondre

0

Il est impossible d'accéder à des données stockées sur différents serveurs en une seule connexion, avec MySQL. Vous ouvrez toujours une connexion à un seul serveur et pouvez travailler avec les objets DB disponibles sur celui-ci (à condition que vous en ayez les privilèges). Je dois ajouter qu'il y a l'option federated tables. Plus précisément, il s'agit d'un moteur de stockage, qui permet d'héberger des données sur un serveur distant dans une table locale, ce qui permet ensuite de faire des jointures avec des données locales et distantes. Mais cela nécessite de définir d'abord de telles tables et vous ne pouvez pas utiliser les clés FK (et il y a d'autres limitations).

+0

Merci pour la réponse, n'est-ce pas contre-intuitif cependant que l'idée de se connecter avec différentes bases de données est de jouer autour et à travers eux mais malheureusement c'est faisable mais avec de nombreuses limites :( –

+0

Différentes bases de données (aka schémas) n'est pas la même chose que des serveurs différents.Vous pouvez bien sûr utiliser plusieurs schémas dans vos requêtes, à condition qu'ils soient sur la même instance de serveur. –