4

我有一个数据库 A 和数据库 B。在数据库 A 中,我将 company_id 设置为主键。在数据库 B 中,我必须设置相同的 company_id 作为参考。是否可以将 B.company_id 设置为外键?如果是意味着如何将此 B.company_id 设置为外键?

4

3 回答 3

7

表之间的任何关系都被限制在一个模式中。您不能在两个不同模式中的两个不相关表之间定义外键约束。如果您确实需要这样做,那么您需要重新考虑您的数据库设计。

于 2013-08-08T05:02:07.687 回答
1

请参考这个几乎重复的项目。在同一个 MySQL 数据库服务器上的不同模式(有时称为“数据库”)之间可以有外键。 不同数据库之间的 MySQL InnoDB 外键

于 2017-10-26T12:59:38.997 回答
1

假设 Table2 属于 schema B,而 Table1 属于 schema A,并且都有 company_id

ALTER TABLE B.Table2
ADD foreign key B_company_id(company_id)
REFERENCES A.Table1(company_id)
于 2019-12-27T17:14:17.830 回答