mysql - 具有 2 个值的主键的 SQL 外键

标签 mysql sql

据我所知,您只能将主键和唯一列分配给外键...但我有一个在两列之间有主键的表:

alter table NAME add constraint PK primary key(VALUE1, VALUE2)

我试图将 Value1 设为另一个表中的外键,但它没有将其识别为主键或唯一的 - 显然是因为主键在两个值之间共享...那么我应该从这里做什么?我对 SQL 语法还很陌生...

最佳答案

您是正确的,您只能将主键和唯一列分配给外键。我不太了解这里的业务需求,但理想情况下,您应该有第三个表,其中 VALUE1 作为主键。如果没有,您应该创建一个。

关于mysql - 具有 2 个值的主键的 SQL 外键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49483548/

相关文章:

sql - 强制 SQL Server 查询不返回任何行

mysql - 从具有多个条件的两个 MySQL 表中进行选择的最佳方法

php - 我的 sql SELECT 错误

php - Laravel MySQL : translating SQL queries to Laravel Eloquent

php - PHP 中是否有函数或命令可以解决数据未插入 SQL 数据库的问题?

mysql - 如何比较两列的重复值?

MySql命令行未转义撇号

sql - 对多列的最大值使用 SQL WHERE 子句

sql - 涉及外键与其他表的 PostgreSQL 行级安全性

sql - 查找仅包含特定值的行