我已经使用它们的属性定义了以下表格:
Table A) Table B) Table C)
- ID - ID - ID1
- Name - xxx - ID2
- Address - yyy - zzz
- ...
- ...
我有两个问题:
1)在Table A)
中,ID
是我的主键。 ID
和Table A)
中的Table B)
属性相同,我不确定Table B)
ID
中是否可以将其用作主键和外键?显然,ID
也是Table B)
中的主键,但同时也是Table A)
的外键。这是允许的吗?
2)在Table C)
中,我需要属性ID1
和ID2
。这两者中没有一个本身是主要的,但它们都是zzz
属性。但是,ID1
和ID2
两个属性或多或少可互换,因此我可以创建两个不同的主键:1)ID1
+ zzz
或2) ID2
+ zzz
。我不确定选择哪个键或者是否允许这种情况是否重要。或者,在这种特殊情况下,主要关键是所有3个属性ID1
,ID2
和zzz
的组合?
答案 0 :(得分:0)
如果A和B中的ID相同,那么您可以合并这两个表并放入相同的ID:
Table AB)
-ID
-name
-address
-xxx
-yyy
所以ID不应该相同......
您可以将主键用作ID1和ID2的组合