在現(xiàn)有的表上創(chuàng)建新的索引。
注意 對(duì)于非 Microsoft JET 數(shù)據(jù)庫,Microsoft Jet 數(shù)據(jù)庫引擎不支持使用 CREATE INDEX (除了在 ODBC 鏈接表上創(chuàng)建虛擬索引)或任何的數(shù)據(jù)定義語言 (DDL) 語句。而使用 DAO創(chuàng)建方法。更詳細(xì)的信息,請參閱說明部分。
CREATE [ UNIQUE ] INDEX 索引
ON 表(字段 [ASC|DESC][, 字段 [ASC|DESC], ...])
[WITH { PRIMARY | DISALLOW NULL | IGNORE NULL }]
CREATE INDEX 語句可分為以下幾個(gè)部分:
部分 |
說明 |
index |
欲創(chuàng)建的索引的名稱。 |
table |
將包含該索引的現(xiàn)存表的名稱。 |
field |
欲被索引的字段的名稱。要?jiǎng)?chuàng)建單一字段索引,在表名稱后面的括號(hào)中列出字段名。要?jiǎng)?chuàng)建多重字段索引,列出包括在索引中的每一個(gè)字段的名稱。如果索引為遞減排序,使用 DESC 保留字;否則,索引總是遞增排序。 |
在不同記錄的索引字段之中不允許有重復(fù)值時(shí),請使用 UNIQUE 保留字。
在可選的 WITH 子句中,可以強(qiáng)制數(shù)據(jù)有效性規(guī)則:你可以:
? | 通過使用 DISALLOW NULL 選項(xiàng)來禁止在新記錄的索引字段中使用 Null 項(xiàng)。 |
? | 通過使用 IGNORE NULL 選項(xiàng),避免在索引中包含索引字段為 Null 值的記錄。 |
? | 使用PRIMARY保留字指定帶索引的字段為 主鍵。這里隱喻此鍵是唯一的,所以可以省略 UNIQUE 保留字。 |
可以使用 CREATE INDEX 把虛擬索引 建立在連接表 上,此表位于 ODBC 數(shù)據(jù)源中,例如未建立索引的SQL服務(wù)器。不需要權(quán)限或訪問遠(yuǎn)程服務(wù)器來創(chuàng)建虛擬索引,且遠(yuǎn)程數(shù)據(jù)庫并不會(huì)察覺到虛擬索引也不受虛擬索引的影響。對(duì)于由外部鏈接之表和數(shù)據(jù)庫內(nèi)部之表皆可使用相同的語法。在一個(gè)通常為“只讀”狀態(tài)的表格上創(chuàng)建虛擬索引將尤為有用。
您也可以使用 ALTER TABLE 語句 在表中添加單一或多重字段索引,也可以使用 ALTER TABLE 語句或 DROP 語句 刪除用 ALTER TABLE 或 CREATE INDEX 創(chuàng)建的索引。
注意 在已經(jīng)具有主鍵的表上創(chuàng)建新索引時(shí),不得使用 PRIMARY 保留字;否則,會(huì)發(fā)生錯(cuò)誤。