Index qui empêche l'insertion

Eléphant du PHP | 65 Messages

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.

ViPHP
ViPHP | 2291 Messages

24 mai 2011, 23:56

Salut,

Simplement mettre les champs avec comme valeur par default à NULL.

A+
Explication
ImageCe que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.