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

Una restricción para evitar la inserción de una cadena vacía en MySQL

Normalmente lo haría con la restricción CHECK:

foo_test VARCHAR(50) NOT NULL CHECK (foo_test <> '')

Antes de la versión 8.0, MySQL tenía un soporte limitado para las restricciones. Del Manual de referencia de MySQL :

La cláusula CHECK es analizada pero ignorada por todos los motores de almacenamiento.

Si debe ceñirse a una versión anterior, use triggers como una solución alternativa, como la gente ha señalado.

En el futuro, es posible que desee echar un vistazo a PostgreSQL , que se considera que tiene un mejor soporte para la integridad de datos (entre otras cosas ) por muchas personas .