要对现有表创建索引,可以使用 CREATE INDEX 命令。CREATE INDEX 命令的语法如下:
CREATE [UNIQUE] INDEX index_name
ON table (field1 [DESC][, field2 [DESC], ...])
[WITH {PRIMARY | DISALLOW NULL | IGNORE NULL}]
必需的元素只有 CREATE INDEX 命令、索引的名称、ON 参数、包含要编入索引的字段的表名称,以及要包含在索引中的字段列表。
DESC 参数使索引按降序创建,在您经常运行查找索引字段高值的查询或按降序对索引的字段进行排序时,这非常有用。默认情况下,索引按升序创建。
WITH PRIMARY 参数将索引的字段作为表的主键 (主键:具有唯一标识表中每条记录的值的一个或多个域(列)。主键不允许为 Null,并且必须始终具有唯一索引。主键用来将表与其他表中的外键相关联。)。
WITH DISALLOW NULL 参数使索引要求对索引的字段输入值,即不允许为空值。
假设您有一个名称为 Cars 的表,其中的字段用于存储您打算购买的二手车的名称、年份、价格和状况。另外假设该表变得很大,您经常在查询中包含年份字段。您可以使用以下过程对年份字段创建一个索引,以帮助查询更快地返回结果:
在“创建”选项卡上的“宏与代码”组中,单击“查询设计”。
关闭“显示表”对话框。
在“设计”选项卡上的“查询类型”组中,单击“数据定义”。
将隐藏设计网格并显示 SQL 视图对象选项卡。
键入以下 SQL 语句:
CREATE INDEX YearIndex ON Cars (Year)
在“设计”选项卡上的“结果”组中,单击“运行”。