我有下表:
Table Account{
[...]
email varchar(100),
[...]
}
以及相应的正则表达式:
/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i
如何使用 MySQL 模型,将正则表达式链接到数据字段“电子邮件”,以便可以通过 php 和触发器读取正则表达式,甚至更好,以某种方式约束?
我想直接使用 MySQL Workbench 定义它,所以单独的表对我来说不起作用。
最佳答案
在我看来,像这样的输入验证实际上并不是数据库的任务。这些验证规则可能会改变。有一天您甚至可以让用户可以配置它们。如果规则被隐藏在某个触发器中,这将变得非常困难。
此外,无论如何,您都需要在应用程序级别处理验证错误 - 显示某种消息。
让 MySQL 中的 PHP 可以访问它们的最佳位置可能是列注释,您可以使用 SHOW COLUMNS
获取它。与 FULL
关键字结合使用。
关于mysql - 如何向 MySQL 数据字段添加正则表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3731373/