mysql - 强制两个一对一表之间的唯一性

标签 mysql sql triggers foreign-keys unique-constraint

我有两个表,彼此之间具有一对一的关系,第二个表主键引用第一个表主键。对于每个表中的给定列,记录必须是唯一的。例如,如果我更改架构以将两个表合并为一个表,则它将类似于 UNIQUE INDEX my_unique_index (column1 ASC, column2 ASC)

据我了解,我不能在两个表之间使用唯一索引。也许是一个触发器?

在使用具有一对一关系的两个表时如何获得此功能?

最佳答案

唯一可以做到的方法就是触发。在每个表的每次插入/更新之前,您需要确保它不会破坏您想要保留的唯一性约束。

关于mysql - 强制两个一对一表之间的唯一性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28945509/

相关文章:

mysql - 如何在没有临时表的情况下对子查询的结果进行 UNION?

mysql - 在 MYSQL 的 INSERT 期间创建触发器显示错误

xaml - 如何在子级上将触发器设置为父级属性?

python - 拆分和编辑 CSV 列并按字母顺序排列

java - Caused by : com. mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: 表 'test.hibernate_sequence'不存在

mysql - 如何减慢我的查询速度

java - 包括 NOT IN 条件下的省略记录

c# - 有没有办法检查结果集中的一行或多行总和是否为特定值?

mysql - 如何退出 mysql 触发器中的一系列 If/else 条件?

python - celery 与 Django - MaybeEncodingError : Error sending result