[英]sqlalchemy create a foreign key?
我在表字符串中有一个复合PK(整数id,varchar(2)lang)
我想创建一个FK,使其仅包含来自其他表的PK的id一半。 这意味着在字符串表(翻译)中可能有许多行与FK匹配。 我只需要存储ID,并由数据库维护引用完整性。
这可能吗? 如果是这样,怎么办?
这是来自维基
引用表中的列必须是引用表中的主键或其他候选键。 引用列的一行中的值必须出现在引用表的一行中。
假设您有以下内容:
id | var
1 | 10
1 | 11
2 | 10
外键必须精确地引用引用表中的一行 。 这就是为什么它通常引用主键的原因。
在您的情况下,您需要制作另一个存储ID的Table1(id),并使列唯一/主键。 当前表中的id列不是唯一的-不能在您的情况下使用它...因此,您需要创建Table1(id-主键) ,并将当前表中的id用作Table1的外键 。 现在,您可以在Table1中创建ID的外键,并且当前表中的主键正常。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.