0

I wish to add email validation via CHECK in MySQL create table command.

But it doesn't work.

mysql> CREATE TABLE `users` (`id` INTEGER AUTO_INCREMENT PRIMARY KEY, `name` VARCHAR(25) NOT NULL,`email` VARCHAR(150) NOT NULL UNIQUE, CHECK (`email` REGEXP '^[a-zA-Z0-9_-\.]+@[a-zA-Z0-9-\.]+\.[a-zA-Z]{2,}$'));

It will show:

Query OK, 0 rows affected (0.01 sec)

And when I try to insert , it will insert any data without validation like it:

mysql> insert into `users`(`name`,`email`) values ('Morteza','Hedi');

The result is:

Query OK, 1 row affected (0.00 sec)
mortymacs
  • 3,054
  • 3
  • 24
  • 48

0 Answers0