Bienvenue! Identification Créer un nouveau profil

Recherche avancée

Re: Requête SQL qui n'insert pas l'enregistrement si il existe déjà

avatar
04/06/13 16:43
C'est sans doute quelque chose qu'on doit pouvoir traiter par SQL (le VBA ne fera qu'automatiser le déclenchement de la requête).

Pour répondre à la question : si des enregistrements existent déjà dans la table cible, il peut se passer 2 choses :
- si la table cible a une clef primaire (ce qui devrait être le cas), et que les enregistrements source ont des valeurs de clef existante, l'ajout échouera (violation de clef primaire).
- sinon, les enregistrements seront ajoutés, autant de fois qu'on le demande.

Et pour faire ce que tu souhaites, une instruction SQL du type devrait faire l'affaire (à adapter bien sûr) :
Langage: SQL
INSERT INTO table_cible (champ1, champ2, champ3) SELECT clef, champ1, champ2, champ3 FROM table_source WHERE (table_source.clef NOT IN (SELECT table_cible.clef FROM table_cible));
Ouala !

-- Hervé Inisan.
SujetAuteurEnvoyé le

Requête SQL qui n'insert pas l'enregistrement si il existe déjà

sooki04/06/13 16:23

Re: Requête SQL qui n'insert pas l'enregistrement si il existe déjà

Hervé Inisan04/06/13 16:43

Re: Requête SQL qui n'insert pas l'enregistrement si il existe déjà

sooki04/06/13 16:47

Re: Requête SQL qui n'insert pas l'enregistrement si il existe déjà

Hervé Inisan04/06/13 17:08

Re: Requête SQL qui n'insert pas l'enregistrement si il existe déjà

sooki05/06/13 15:13

Seuls les utilisateurs enregistrés peuvent poster des messages dans ce forum.

Cliquez ici pour vous connecter