繁体   English   中英

sqlalchemy创建外键?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM