首页 >数据库 >mysql教程 >MySQL InnoDB 外键可以跨不同数据库吗?

MySQL InnoDB 外键可以跨不同数据库吗?

Linda Hamilton
Linda Hamilton原创
2024-11-14 13:45:021028浏览

Can MySQL InnoDB Foreign Keys Span Different Databases?

MySQL InnoDB 外键引用另一个数据库

在 MySQL InnoDB 中,可以在不同数据库的表之间建立外键关系。此功能允许您跨数据库边界强制执行引用完整性,确保数据一致性。

方法:

创建引用不同数据库中的表的外键,只需在 FOREIGN KEY 子句中指定数据库名称,后跟表名称即可。语法如下:

ALTER TABLE your_table
ADD FOREIGN KEY (your_column) REFERENCES otherdb.othertable(other_column);

例如,考虑两个数据库:db1 和 db2。假设我们在db1中有一个表users,在db2中有一个表orders。我们可以在orders表中建立一个外键来引用users表,如下所示:

ALTER TABLE orders
ADD FOREIGN KEY (user_id) REFERENCES db1.users(id);

这个外键将确保orders表中的每个user_id在db1的users表中都有对应的id。

注意:

外键关系涉及的数据库必须在同一台服务器上。 MySQL InnoDB 不支持跨服务器外键。

以上是MySQL InnoDB 外键可以跨不同数据库吗?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn