J'ai un champ qui stocke les codes produit. Les codes sont uniques, mais certains produits n'ont tout simplement pas de code. Je ne peux pas inventer de codes car ce sont des codes de fournisseurs.
Ce genre de contrainte est-il possible dans MySQL?
Je suis un noob avec des procédures stockées et des déclencheurs, donc si la solution implique l'un de ceux-ci, soyez patient.
Mise à jour: la colonne n'est PAS Null. C'est pourquoi je n'ai pas pu faire cela.
mysql
database-design
constraints
Le désintégrateur
la source
la source
Réponses:
Oui, vous pouvez le faire. Voir la référence MySQL (version 5.5) .
la source
Oui, si vous rendez la colonne de code produit Nullable (non déclarée avec
NOT NULL
), la clé unique autorisera plusieurs lignes avecNULL
des codes produit.la source
MySQL permet toujours à plusieurs lignes d'avoir une valeur de
NULL
dans une colonne unique.la source
table
(key
int (11) NOT NULL AUTO_INCREMENT,field
tinyint (1) DEFAULT NULL )