Index qui empêche l'insertion
Posté : 14 avr. 2011, 10:49
Bonjour,
J'ai une table articles ayant les colonnes col1, col2, col3, col4.
J'empêche l'enregistrement de doublon par création d'un index sur col1 et col2 (je suis obligé d'imposer cette contrainte) :
ALTER TABLE articles ADD UNIQUE ('col1', 'col2');
Quand je fais une insertion automatique d'enregistrement dans les champs col3 et col4, le système me refuse cette insertion quand les champs col1 et col2 sont vides (identiques car vides).
Exemple:
INSERT INTO articles(col3,col4) VALUES(val1col1, val2col2);
Les champs col3 et col4 sont vides, je n'y ai rien inséré.
Si je fais:
INSERT INTO articles(col3,col4) VALUES(val11col1, val22col2);
=>la requête est refusée ( a rencontré les champs col3 et col4 vides indexés donc doublon )
Quelle est la parade à cette situation ?
Cordialement
J.F.
J'ai une table articles ayant les colonnes col1, col2, col3, col4.
J'empêche l'enregistrement de doublon par création d'un index sur col1 et col2 (je suis obligé d'imposer cette contrainte) :
ALTER TABLE articles ADD UNIQUE ('col1', 'col2');
Quand je fais une insertion automatique d'enregistrement dans les champs col3 et col4, le système me refuse cette insertion quand les champs col1 et col2 sont vides (identiques car vides).
Exemple:
INSERT INTO articles(col3,col4) VALUES(val1col1, val2col2);
Les champs col3 et col4 sont vides, je n'y ai rien inséré.
Si je fais:
INSERT INTO articles(col3,col4) VALUES(val11col1, val22col2);
=>la requête est refusée ( a rencontré les champs col3 et col4 vides indexés donc doublon )
Quelle est la parade à cette situation ?
Cordialement
J.F.