IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

D�veloppement SQL Server Discussion :

Communication entre 2 bases SQL Server


Sujet :

D�veloppement SQL Server

  1. #1
    Membre �clair� Avatar de marsupilami34
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    576
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 576
    Par d�faut Communication entre 2 bases SQL Server
    Bonjour � tous,

    J'essaye d'effectuer une requete permettant d'ins�rer des donn�es de ma base1 vers ma base2 via un crown.
    Le but est mettre � jour uniquement les donn�es qui ne sont pas encore pr�sente dans ma table de destination dans base2.

    J'ouvre ma connexion comme ceci:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
     
    INSERT OPENQUERY ([MA_CONNEXION_VERS_BDD2], 'Select ID, x, y, z FROM dbo.TableResult')
    Select ID, x, y, z FROM dbo.TableDeDepart WHERE ID not in (Select ID, x, y, z FROM dbo.TableResult)
    Est ce possible et comment ?

    Merci d'avance pour votre aide

    Marsup

  2. #2
    Invit�
    Invit�(e)
    Par d�faut
    Est-ce que ce sont deux bases de donn�es sur la m�me instance ou pas ?

  3. #3
    Membre �clair� Avatar de marsupilami34
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    576
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 576
    Par d�faut
    Citation Envoy� par 7gyY9w1ZY6ySRgPeaefZ Voir le message
    Est-ce que ce sont deux bases de donn�es sur la m�me instance ou pas ?
    Non, il s'agit de 2 instance diff�rentes

  4. #4
    Invit�
    Invit�(e)
    Par d�faut
    Tu peux cr�er un linked server entre les deux instances : https://docs.microsoft.com/en-us/sql...l-server-ver15
    et manipuler les tables � distance classiquement avec [LinkedServer].[baseDeDonn�es].[Sch�ma].[Table]

  5. #5
    Membre �clair� Avatar de marsupilami34
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    576
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 576
    Par d�faut
    Citation Envoy� par 7gyY9w1ZY6ySRgPeaefZ Voir le message
    Tu peux cr�er un linked server entre les deux instances : https://docs.microsoft.com/en-us/sql...l-server-ver15
    et manipuler les tables � distance classiquement avec [LinkedServer].[baseDeDonn�es].[Sch�ma].[Table]
    J'ai r�ussi � cr�er une connexion et � interroger la base.
    Cela dit quand je souhaite faire une requete de non correspondance, j'ai un message d'erreur comme quoi la table n'est pas li�e

    Voici lk'endroit o� ca p�se probleme � ma requete

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
     
     LEFT JOIN [LINKED_SERVER].[bdd].[dbo].[MATABLE] ON (T1.num_cell = [LINKED_SERVER].[bdd].[dbo].[MATABLE].id1l) AND (T1.id_passage = [LINKED_SERVER].[bdd].[dbo].[MATABLE]].id2)
    WHERE [LINKED_SERVER].[bdd].[dbo].[MATABLE].id1 Is Null AND [LINKED_SERVER].[bdd].[dbo].[MATABLE].id2 Is Null;
    une id�e d'o� pourrait venir le probleme ?

    Merci d'avance

  6. #6
    Invit�
    Invit�(e)
    Par d�faut
    C'est quoi le message d'erreur complet ?

    Entre nous, les alias dans les requ�tes, c'est pas fait pour les chiens�

  7. #7
    Membre �clair� Avatar de marsupilami34
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    576
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 576
    Par d�faut
    [QUOTE=7gyY9w1ZY6ySRgPeaefZ;11625014]C'est quoi le message d'erreur complet ?

    /QUOTE]

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
     
    [LINKED_SERVER].[bdd].[dbo].[MATABLE].id1 ne peut être lié
    [LINKED_SERVER].[bdd].[dbo].[MATABLE].id2 ne peut être lié

  8. #8
    Invit�
    Invit�(e)
    Par d�faut
    et il n'y pas de num�ro d'erreur qui vient avec ?

  9. #9
    Membre �clair� Avatar de marsupilami34
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    576
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 576
    Par d�faut
    Citation Envoy� par 7gyY9w1ZY6ySRgPeaefZ Voir le message
    et il n'y pas de num�ro d'erreur qui vient avec ?
    Ah si pardon:

    Msg 4104, Level 16, State 1, Line 4

  10. #10
    Mod�rateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    D�tails du profil
    Informations personnelles :
    Localisation : France, Rh�ne (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Par d�faut
    bonjour,

    Citation Envoy� par 7gyY9w1ZY6ySRgPeaefZ Voir le message
    Entre nous, les alias dans les requ�tes, c'est pas fait pour les chiens�
    C'est d'ailleurs bien ce qui pose probl�me ici. Le mieux est en effet de mettre un alias.
    Dans la clause where, mettez juste le nom des tables (ou son alias), pas de nom en quatre parties (reserv� � la clause FROM)

  11. #11
    R�dacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de donn�es / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 002
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : Expert bases de donn�es / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 22 002
    Billets dans le blog
    6
    Par d�faut
    Postez l'int�gralit� de votre requ�te SVP

    A +
    Fr�d�ric Brouard - SQLpro - ARCHITECTE DE DONN�ES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : mod�lisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  12. #12
    Membre �clair� Avatar de marsupilami34
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    576
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 576
    Par d�faut
    Citation Envoy� par aieeeuuuuu Voir le message
    bonjour,



    C'est d'ailleurs bien ce qui pose probl�me ici. Le mieux est en effet de mettre un alias.
    Dans la clause where, mettez juste le nom des tables (ou son alias), pas de nom en quatre parties (reserv� � la clause FROM)
    C'est � dire ?

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
     
    LEFT JOIN [MATABLE] ON (T1.num_cell =[MATABLE].id1l) AND (T1.id_passage = [MATABLE]].id2)
    WHERE [LINKED_SERVER].[bdd].[dbo].[MATABLE].id1 Is Null AND [LINKED_SERVER].[bdd].[dbo].[MATABLE].id2 Is Null;

  13. #13
    Membre �clair� Avatar de marsupilami34
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    576
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 576
    Par d�faut
    Citation Envoy� par SQLpro Voir le message
    Postez l'int�gralit� de votre requ�te SVP

    A +
    La voici

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
     
    SELECT T1.id1, T1.id2, T1.x, T1.y, T1.temp
    FROM (SELECT Table1.id1, Table1.id2, Table1.x, Table1.y, Table2.temp
    FROM Table1 LEFT JOIN Table2 ON (Table1.id2 = Table2.id2) AND (Table1.id1 = Table2.id1)
    )  AS T1 
    LEFT JOIN [LINKED_SERVER].[bdd].[dbo].[MATABLE] ON (T1.id1 = [LINKED_SERVER].[bdd].[dbo].[MATABLE].id1) AND (T1.id2 = [LINKED_SERVER].[bdd].[dbo].[MATABLE].id2)
    WHERE [LINKED_SERVER].[bdd].[dbo].[MATABLE].id1 Is Null) AND [LINKED_SERVER].[bdd].[dbo].[MATABLE].id2 Is Null;

  14. #14
    Mod�rateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    D�tails du profil
    Informations personnelles :
    Localisation : France, Rh�ne (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Par d�faut
    remplacer
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    WHERE [LINKED_SERVER].[bdd].[dbo].[MATABLE].id1 Is Null AND [LINKED_SERVER].[bdd].[dbo].[MATABLE].id2 Is Null;
    Par
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    WHERE MATABLE.id1 Is Null AND MATABLE.id2 Is Null;

  15. #15
    R�dacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de donn�es / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 002
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : Expert bases de donn�es / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 22 002
    Billets dans le blog
    6
    Par d�faut
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    SELECT T1.id1
          ,T1.id2
          ,T1.X
          ,T1.Y
          ,T1.temp
    FROM  (SELECT Table1.id1
                 ,Table1.id2
                 ,Table1.X
                 ,Table1.Y
                 ,Table2.temp
           FROM   Table1
                  LEFT OUTER JOIN Table2
                    ON Table1.id2 = Table2.id2
                       AND Table1.id1 = Table2.id1) AS T1
              LEFT OUTER JOIN [linked_server].[bdd].[dbo].[MATABLE] AS T
                 ON T1.id1 = T.id1
                    AND T1.id2 = T.id2
    WHERE  T.id1 IS NULL AND T.id2 Is Null;
    A +
    Fr�d�ric Brouard - SQLpro - ARCHITECTE DE DONN�ES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : mod�lisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  16. #16
    Membre �clair� Avatar de marsupilami34
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    576
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 576
    Par d�faut
    Merci SQLPro, �a fonctionne tr�s bien
    Bonne journ�e et merci � tous pour votre aide pr�cieuse

    Marsup

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. R�ponses: 9
    Dernier message: 07/02/2017, 07h31
  2. Cr�er une relation entre une base SQL-SERVER et MySQL
    Par JacNar6 dans le forum MS SQL Server
    R�ponses: 12
    Dernier message: 19/09/2012, 14h09
  3. Communication entre Vb6 et Sql Server 2000
    Par r.mehdi dans le forum VB 6 et ant�rieur
    R�ponses: 1
    Dernier message: 06/05/2008, 07h23
  4. Synchronisation entre plusieurs base SQL Server
    Par vivoli12 dans le forum MS SQL Server
    R�ponses: 5
    Dernier message: 19/05/2007, 13h47
  5. Comment se connecter � une base SQL server
    Par zapia dans le forum MS SQL Server
    R�ponses: 7
    Dernier message: 22/10/2003, 17h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo