在mysql中检查电子邮件域是行不通的

时间:2012-07-19 07:26:42

标签: mysql

我在插入新值时尝试检查电子邮件的语法, 但这似乎不起作用:

create table foo (
    email varchar(100) not null,
    constraint foo_check1 check (email like '%@%.%')
);

insert into foo values ('bar'); /* OK ...why ? */

1 个答案:

答案 0 :(得分:1)

这是MySQL的已知限制 - CREATE TABLE不支持检查约束。 请参阅:“The CHECK clause is parsed but ignored by all storage engines

您应首先创建表,然后更改它以添加检查约束。