Bonjour à tous,

j'essai de faire un insert dans une table que si la valeurque je veux intégrer ne soit pas dans la table.
pour cela j'utilise un not exists comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
insert into tableX(cod,rang,lib,pre,rhier,chap)
select 9999,20,'divers',1,20,20
from tableX 
where  not exists (select 1 from tableX where cod=9999)
En sachant que cod est la clé primaire de la table bien evidement.
Ce que je ne comprend pas est que lorsque je fais un test sur le select cela me revoi 9999,20,'divers',1,20,20 autant de fois que de ligne dans ma table.

Est normal? Je ne comprend pas.

Je souhaite simplement intégrer 9999,20,'divers',1,20,20 si 9999 n'existe pas dans la table.


Merci de votre aide