Rebonjour,
J'aimerais insérer une valeure dans une table mais seulement si cette valeure n'existe pas. Est-ce possible?
Merci d'avance pour votre aide
Rebonjour,
J'aimerais insérer une valeure dans une table mais seulement si cette valeure n'existe pas. Est-ce possible?
Merci d'avance pour votre aide
Personne ne pourrait m'aider? SVP
Bah tu fais un algo dans lequel tu vérifie l'existence de ta valeur et si elle n'existe pas tu fais ton insertion. Enfin tu travailles sur quoi déjà ?
Si, probablement tout le monde ici, mais ta question est trop vaste, tu dispose de plein de solutions :
- une requete insert//select
- une clause d'integrité ou une clef primaire définie sur ta table
précise tes données et ton cas si tu as besoin de plus de précisions.
D'accord je l'avoue, ce n'était pas très claire. Alors j'ai une table reservations, et une table personne. Et j'aimerais faire un insert de mon champ personne_presente dans le champ nom_personne de la table personne. Mais il peut il y avoir une personne qui est déjà dans la table personne, c'est pour sela que je voudrais pouvoir controler directement depuis la requete sql avant d'insérer la valeure, si elle existe déjà.
Donc est-ce possible? Car j'ai essayé avec un select disctinct avec un insert, ca ne marche pas.
Merci d'avance pour votre précieuse aide
Sisi, un select insert peut fonctionner, par ex :
ton select ne ramenera rien si roger toto est deja dans la base et donc n'inserera rien dans ce cas, il le creera sinon...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 insert into personne (nom, prenom) select 'toto' as nom, 'roger' as prenom from personne where not exists ( select null from personne where nom='toto' and prenom='roger' )
mais le mieux est probablement de définir un index unique sur nom prénom qui fera 'planter' un insert tout bete en 'duplicate key', par exemple
(syntaxe a adapter a ton sgbdr). C'est non seulement plus propre mais ca permet de s'assurer qu'il n'y a pas de doublons dans ta table... Attention tou de meme, nom/prenom sont tout sauf un identificateur de personne, essaye sylvie-dupont sur les pages blanches par exemple
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 create index id_personne_nom_prenom unique on personne ( nom, prenom )
C'est parfait, merci infiniment pour ton aide. Ca marche comme sur des roulettes.
A tout bientot
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager