所以我正在创建一个db,我可以选择tableA或tableB。请注意,在当前概念中,InstanceID,slabID和ChangeID几乎在每个表中都会重复,因为只有与表特定的NO或键结合使用时,它们才能唯一标识每一行。
我担心的是这个复合主键是否会太大而不能影响性能,或者据我所知它只会给表格提供行的逻辑排序?
请参阅下面了解更多详情..
表A-分层
InstanceID(PK,FK)(Tinyint)---整个施工都是1,除非进行新的施工
SlabID(PK,FK)(Tinyint)---范围在1-25之间,就像地板上的瓷砖一样
如果建筑物在完工后被改变,则ChangeID(PK,FK)(Tinyint)---将从1增加
LayerSeq(PK)(Tinyint) - 基础层序列,范围从1-10
LayeringCode(PK)(Varchar(1)) - 表示材料的字母代码
。
。
其他分层变量
另一种选择是:
的表B-分层
InstanceID(FK)(Tinyint)---整个施工都是1,除非进行新的施工
SlabID(FK)(Tinyint)---范围在1-25之间,就像地板上的瓷砖一样
如果建筑物在完工后改变,则ChangeID(FK)(Tinyint)---将从1增加
LayerID(PK)(未定) - 这将是Instance,Slab,Change,Layerseq,代码或仅具有自动增量的代理键的某种组合
LayerSeq(Tinyint) - 基础层序列,范围从1-10
LayeringCode(Varchar(1)) - 表示材料的字母代码
。
。
其他分层变量
感谢您的帮助!