我继承了一个使用MySQL并由PHP前端使用的应用程序。编写这个系统的人已经达到了一些相当复杂的长度,以确保用户输入的代码是有效的 - 而且这意味着这些代码也存在于另一个表中。
当我第一次看到这个时,我想知道他为什么没有使用CHECK约束并让dbms对此进行排序 - 我有一些不同程序的实现相同检查的视图,而不仅仅是dbms中的一个地方。然后我发现MySQL不支持Check约束(严格来说不是真的 - 它支持语法但只是忽略它)。
有没有办法可以在MySQL中实现Check Constraints?
任何提示,建议等都会很棒。
答案 0 :(得分:5)
您可以使用触发器实现与它们类似的东西,但MySQL本身不支持CHECK约束。不过不用担心,它会让你定义它们而只是默默地忽略它们!