我有下表:

Table Account{
    [...]
    email varchar(100),
    [...]
}

和相应的正则表达式:

/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i

我如何使用MySQL模型将正则表达式链接到数据字段“电子邮件”,以便可以通过PHP和触发器读取正则表达式,或者在某种限制下读取。

我想使用MySQL Workbench直接定义此功能,因此单独的表不适合我。

有帮助吗?

解决方案

我认为,这样的输入验证并不是数据库的任务。这些验证规则可能会改变。您甚至可以让用户有一天可以使它们配置。如果将规则埋在某个地方的某个地方,这将变得非常困难。

另外,无论如何,您都需要在应用程序级别上处理验证错误 - 显示某种消息。

使它们可以访问的最佳场所 php MySQL内部可能是一列注释,您可以使用该评论 SHOW COLUMNSFULL 关键词。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top