CHECK
restrições não são suportadas pelo MySQL. Você pode defini-los, mas eles não fazem nada (a partir do MySQL 5.7). Do manual :
OCHECK
cláusula é analisada, mas ignorada por todos os mecanismos de armazenamento.
A solução é criar gatilhos , mas eles não são a coisa mais fácil de se trabalhar.
Se você deseja um RDBMS de código aberto que suporte
CHECK
restrições, tente PostgreSQL
. Na verdade, é um banco de dados muito bom.