0

我怀疑这听起来像是一个愚蠢的问题,但是,在我老板的要求下,刚刚将一堆表单 (id, value, is_default) 的 identikit 查找表迁移到一个大型通用查找表 (id , type, value, is_default),有没有一种很好的方法可以从现在引用这个的表中设置参照完整性?

一个建议是为新表中的每个“类型”设置一个视图,这当然意味着我将花费两周的大部分时间来追赶我的尾巴,以便回到我开始的地方。

我是否坚持这一点,或者是否有类似 "FOREIGN KEY (x_type_id) REFERENCES general_values (id) WHERE type="x" 之类的东西?或者更聪明的东西。

谢谢!

4

1 回答 1

1

有没有类似 "FOREIGN KEY (x_type_id) REFERENCES general_values (id) WHERE type="x" 的东西?

不,MySQL 中没有条件引用完整性。

我们无法进行有条件的参照完整性检查,但您可以通过编程方式检查是否。

编辑:

这篇文章在同一行讨论您想要实现的目标。

于 2012-05-01T16:23:01.097 回答