那是正确的,如果我从4列上创建一个复合主键? 喜欢:
PRIMARY KEY(name, slug, type, parent)
所以不应该有多个行具有相同的名称,蛞蝓,类型和家长。 是否有太多的列? 这是否会影响性能?
我使用的SQLite BTW。
那是正确的,如果我从4列上创建一个复合主键? 喜欢:
PRIMARY KEY(name, slug, type, parent)
所以不应该有多个行具有相同的名称,蛞蝓,类型和家长。 是否有太多的列? 这是否会影响性能?
我使用的SQLite BTW。
它通常建议有一个ID字段是它自己独特的。 比较整数值的比较比字符串快,所以你的组合键将产生负面影响性能。
将一列用下面的数据类型将是理想的,如果你将加入到其他表:
INTEGER PRIMARY KEY AUTOINCREMENT
SQLite的有限制2000列的索引 。
4列索引的性能将不能从该3列索引的太大的不同。
然而,通用的业绩报表不感兴趣。 是你有什么事情该表结构是否是高性能够你,你可以通过测量它只是找出来。
请注意,如果你只有一列做查询,该列必须是在索引中的第一个 ,以允许使用的索引。