[SQL] insertion conditionnelle

Paton -  
 Paton -
Bonjour !

Je voudrais insérer des données dans une base de données MySQL, mais à condition que l'entrée à insérer n'existe pas déjà, car ma première valeur (p_index) est une clef primaire.
Comment faire ?

INSERT `personne` (`p_index`,`p_age`,`p_statut`) VALUES ('63','23','');

J'ai essayé IF NOT EXISTS, mais ça marche pas...

Merci par avance !

PS : Désolé suite à une manipulation douteuse, j'ai déjà insérer ce message dans DIVERS... Pardon aux modos :-*

1 réponse

batmat Messages postés 1871 Statut Membre 114
 
Moi jte conseillerais de faire le select équivalent au tuple à insérer. Tu fais un count du résultat et si il est égal à 0, tu insère sinon tu n'insères pas ...
@++

Vous hésitez entre Linux et Windows?
Vous voulez dépenser du temps ou de l'argent ?
0
Paton
 
Salut Batmat, et merci de ta réponse !

C'est en effet la solution que j'ai choisi. Logiquement, ça fonctionne très bien, mais c'est un peu lourd car, en fait, mon insertion est incluse dans une boucle (c'est la lecture d'un fichier de DUMP). Mais bon, à défaut de grives...

Bonne journée et encore merci !
0