设计web-cms数据库的索引

时间:2010-10-05 18:11:06

标签: indexing

我有一个问题,请你帮忙吗? 我在User table_中为web-cms设计了一个数据库,其中包括:UserID,Username,Password,FirstName,LastName,... _这是我必须在其上创建索引的最佳选择,用户名或FirstName和LastName ?或两者兼而有之? 默认情况下,UserID是用户表的聚簇索引,因此下一个索引必须是非聚簇的。但我不确定UserID是聚簇索引。由于这是一个网站,许多用户每天都可以注册或删除他们的帐户,这是否是在UserID上创建聚集索引的好选择? 我正在使用sql server 2008

1 个答案:

答案 0 :(得分:1)

您应该在通常按顺序请求的字段上定义聚簇索引,或者包含大量不同的值,或者在对joion表的查询中使用。所以这通常意味着主键是一个很好的候选者。

非聚簇索引适用于查询的where子句中使用的字段。

确定您创建索引的字段是特定于您的应用程序的字段。如果你有非常关键的查询使用名字和姓氏字段,那么我会说是,否则可能不值得努力。

就删除帐户的人而言,我确信您不打算从表中删除该行。通常您只是将它们标记为非活动状态,因为可能受此用户影响的所有其他相关表会发生什么?