sql >> Base de Datos >  >> RDS >> Mysql

¿Cómo hacer cumplir la restricción única en MySQL?

MySQL soporta perfectamente restricciones únicas.

Sin embargo, no admite restricciones/índices parciales, por lo que deberá marcar las imágenes no primarias con un NULL en lugar de 0 .

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

Puede insertar un número arbitrario de NULL valores en isPrimaryImage pero solo un valor no nulo por cliente.