我正在为复杂的拍卖网站设计一个在线市场。
鉴于每个数据库的增长和复杂性的潜力,我正在分离成员和产品的数据库。问题是如何处理两个独立数据库之间的参照完整性?关系可以是一对一或一对多。我已经阅读了很多关于使用触发器的信息,将表从一个数据库复制到另一个数据库;显然不会以孤儿行结束。
我知道网站上有类似的问题,但没有一个具体的答案。
答案 0 :(得分:2)
鉴于每个数据库的增长和复杂性的潜力,我是 分离成员和产品的数据库。问题是什么 与两个独立数据库之间的参照完整性有关吗?
这可能是一种可防御的策略,也可能是一场灾难。这部分取决于你的dbms。在大多数情况下,您会使用多个模式而不是多个数据库来解决此类问题。 (从这个意义上讲,模式是运行CREATE SCHEMA statement时获得的模式。)外键引用在多个模式中工作正常。许多支持多个SQL模式的dbms 不支持支持对其他数据库的简单外键引用。
MySQL不支持CREATE SCHEMA。相反,MySQL数据库的行为与SQL模式非常相似。
答案 1 :(得分:1)
不要分开。数据库的处理能力取决于托管数据库的服务器的处理能力。如果有2种不同的模式,那么你可能会想到因任何原因而分离。对于相同的模式符合条件的对象,我建议不要分开,而是在更好的服务器中托管。