比方说,我有一个名为 ACCOUNT 的表,另一个名为 TRANSACTIONS 。
如果 ACCOUNT 主键 [num,type] :
这两个陈述之间有什么区别......
这是 TRANSACTION 的外键: [num,type]<帐户[num,type]
和
这是 TRANSACTION 的外键: [type,num]<帐户[num,type]
请注意,“< ”符号表示此符号
答案 0 :(得分:2)
我认为当数据库索引必须从表中检索数据时,外键排序很重要。
如果你有以下表格:
key | code | value
a | 1 | val 1
a | 2 | val 2
b | 1 | val 3
b | 2 | val 4
c | 1 | val 5
c | 2 | val 6
其中主键是键和代码,然后当数据库搜索时,它将首先搜索键,从而减少结果集,然后它将检索数据到第二列,即Code。如果你颠倒顺序,你会得到一个非优化的解决方案。
我认为数据库试图以类似的方式将列与外键链接。
因此它很重要。
如果您有疑问,请尝试创建2个虚拟表,这些表通过外键相互链接。如果它给出了错误,请尝试Google的错误代码。你会得到一个正确的解释。