Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment appliquer une contrainte unique dans MySQL ?

MySQL supporte parfaitement les contraintes uniques.

Cependant, il ne prend pas en charge les contraintes/index partiels, vous devrez donc marquer les images non primaires avec un NULL au lieu de 0 .

ALTER TABLE file ADD CONSTRAINT ux_file_customer_primary 
UNIQUE (customerId, isPrimaryImage)

Vous pouvez insérer un nombre arbitraire de NULL valeurs dans isPrimaryImage mais une seule valeur non nulle par client.