![]() |
1
5
例如,如果您的问题域是-并且将始终是-这样,两个产品名称始终是不同的,并且任何产品都不会更改其名称(请考虑Norton Antivirus->Symantec Antivirus作为名称更改的简单示例),那么您可以使用产品名称作为唯一密钥。
因此,强烈建议您使用数字ID,因为您可能并不总是能够预测到这类情况—而且稍后更改DB结构以获得产品ID当然比需要从查询中的名称映射和ID带来的小不便要严重得多。 |
![]() |
2
3
如果你能保证
反对将它用作主键(或者更重要的是:sqlserver中的集群键)的唯一真正原因确实是基于性能的。更宽且大小不同的聚类键在许多方面都是次优的,它不仅影响表及其聚类索引,还影响该表上的所有非聚类索引。但如果这不关你的事,再说一次-你会没事的
|
![]() |
3
0
呃。。。两者在某种程度上都是正确的
|
![]() |
developer · 带外键的SQL表设计 5 月前 |
![]() |
relatively_random · 确保两个表之间一致的共同参考 7 月前 |
![]() |
b126 · 在两种不同的Oracle模式上执行相同查询的速度差异很大 1 年前 |
![]() |
robertspierre · 在多对多关系中自动删除未引用的行 1 年前 |
![]() |
Michael Samuel · MYSQL在以下情况下自动创建索引 7 年前 |