表的外键我有mysql中的两个表看起来像:MySQL的:与几乎类似领域
Product:
ID(PK) Details
AB23CD etc
EF45GH etc
AB34CD etc
more rows...
Client:
P1 P2 Client ClientCallsThis
AB CD X X1
EF GH Y Y1
EF GH X X2
more rows...
P1和P2指的是前两个和最后两个字符从产品ID列。
我会想这两个表连接在一起。我想到了一个办法是引入2分列在产品表,并通过中间表(Product-Client
)加入他们的行列:
Product:
ID(PK) Details P1(FK) P2(FK)
AB23CD etc AB CD
EF45GH etc EF GH
AB34CD etc AB CD
more rows...
Client:
P1(FK) P2(FK) Client ClientCallsThis
AB CD X X1
EF GH Y Y1
EF GH X X2
more rows...
Product-Client:
P1(PK) P2(PK)
AB CD
EF GH
more rows...
但是这样做,是很浪费,并增加了复杂性(增加了出错的可能性)因为P1和P2可以很容易地从ID列导出。我能做些什么来避免这个问题?也许某种方式将Product
中的ID加入Product-Client
中的P1和P2中?
提供的任何帮助非常感谢!
对于外键工作,必须在引用字段中具有**完全相同的值。 – Shadow