mysql - 什么时候在mysql中使用外键

标签 mysql rdbms foreign-key-relationship

我目前正在构建数据库,但不确定何时在表上使用外键。 大多数表用于事务、日志记录和历史记录。

在哪些表中放置外键是否有一般规则? 我有一张用于特定交易的一般详细信息的表格,然后是另一张用于特定详细信息的表格。我应该在表上放一个外键来获取具体细节吗?

还有这个表用于存储用户信息,另一个用于记录用户事件。我还应该在记录用户事件的表中放置一个外键吗?

最佳答案

如果两个表之间存在关系,您应该始终使用外键约束来强制执行该关系。

我防止逻辑上“损坏”的数据(例如,实际上并不存在的事务的详细信息)并且 - 同样重要的 - 它记录您的数据库模型。

关于mysql - 什么时候在mysql中使用外键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13209701/

相关文章:

mysql - Codeigniter - 我看不到数据库错误

php - Docker Compose : Unable to run mysql, 会自动停止

sql - 两个 SELECT 和一个 SELECT 加 JOIN 的性能差异

mysql - 向 ActiveRecord 模型关系添加统计信息

sql - 如何映射m :n relation to slice field?

具有多个多对多关系的数据库设计

php - 在数组中拆分数组(Mysql、PHP 和 Ajax)

mysql - mysql连接问题

postgresql - rdbms 查询中语言标签(小标签集)的有效方法

javascript - 如何通过在 SuiteScript 2.0 中使用左外连接连接两条记录来在 netsuite 中创建保存的搜索