Bonjour, je voudrais faire une insertion conditionnelle.
Si ce que je veux rajouter dans la base est déjà dedans, on ne fait rien. Si il n'y est pas, on l'insère.
Pour information,j'ai une table sequencearn(Id_ARN,Sequence)
Le champs sequence est de type TEXT
J'ai trouvé sur internet différente possibilités
Aucune ne marche. Généralement,c'est une erreur de syntaxe.
Voici ce que j'ai testé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 IF NOT EXISTS( select Sequence,Id_ARN from sequencearn where Sequence like "AAA" and Id_ARN="11") INSERT INTO sequencearn(Sequence,Id_ARN) VALUES ("AAA","11")
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 IF (select count(*) from sequencearn where Sequence="AAA") THEN // j'ai essayé avec et sans THEN INSERT INTO sequencearn( Sequence, Id_Org) VALUES ( "AAA", "1" )Je pense que la solution doit être évidente mais je la vois pas .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 insert into sequencearn(Sequence,Id_Org) VALUES (Sequence,Id_Org)where not exists (select Sequence,Id_Org from sequencearn where Sequence ="AAA" and Id_Org="1")
Toute aide sera donc la bienvenue :p
XxX
Partager