0

据我了解,不可能在来自两个不同数据库的表之间强制执行引用活动(和级联更新)(即使这些表都在拆分后端),对吗?

如果您的表设置正确(即它们都已规范化),是否有必要强制执行引用活动?我问,因为如果前端正在使用(比如说)从部门表中获取行源的组合框,并且控制源在雇员表中存储外键(即部门 ID),那么如果引用完整性是强制执行?

如果它确实很重要,那么我绝对必须找到一种方法来强制来自不同数据库文件的表之间的引用完整性..必须有一种方法......

最后,解决方法是将所有后端表保存在一个数据库文件中吗?基本上每个数据库都使用 Employee 表和 Department 表。但其余表通常仅与特定前端数据库中使用的其他表相关。

4

1 回答 1

1

参照完整性并不是真正参考查找表,而是关于父/子表或某种类似的重要关系,它们应该始终位于同一个数据库中。无论您是否使用 RI,您的表都应始终设计为最适合应用程序。

重点是相关表具有另一个表指向的键ID,如果该相关记录受到影响,则不会破坏关系。查找表可以构造为具有唯一标识符,因此如果原始记录丢失,并添加了新记录,即使键已更改,唯一标识符也不会因为您只需将其放回原处。

作为一般规则,如果一个表中的记录依赖于另一个表中的记录,则需要参照完整性,并且它们必须在同一个数据库中。这样,数据库本身就可以执行,而程序员不必这样做。

于 2015-04-25T01:07:50.773 回答