官术网_书友最值得收藏!

4.2 創(chuàng)建及使用索引

在Access中,用戶可通過創(chuàng)建索引,來加快搜索表和排序表記錄的操作速度。

4.2.1 索引概述

使用索引可以幫助Access更快速地查找記錄并對其進行排序。

1.了解索引

索引根據(jù)自身包含的一個或多個字段來存儲記錄的位置,它自身比所描述的表小很多,以便于Access能夠更有效地進行讀取,其具體速度則取決于索引字段的唯一值的數(shù)據(jù)。

索引的工作方式類似于書籍中索引的工作方式,其中書籍索引是一個包含書中出現(xiàn)的詞語的列表,該列表中的每個條目顯示了包含特定詞語頁面的頁碼,以便用戶根據(jù)特定詞語查找到特定頁面,這樣一來比翻書查找的速度快多了。

在Access中,索引類似于一個表中出現(xiàn)的字段值的列表,該列表中的每個條目還顯示了包含字段值的記錄的位置。若要查找某個特定的字段值,使用索引進行查找要比查閱整個表格進行讀取的速度快得多。

使用索引可以更快地查找出現(xiàn)次數(shù)較少的字段值,表中不同字段值的數(shù)量越多,索引對提高搜索和選擇查詢的性能的幫助就越大。

當Access通過索引獲得記錄的位置后,可通過直接移動到正確的位置來檢索這些記錄中的數(shù)據(jù)。這樣一來,使用索引查找數(shù)據(jù)會比通過掃描表中的所有記錄來查找數(shù)據(jù)快很多。

而在追加、刪除或更新數(shù)據(jù)時,必須更新受影響表中的所有索引以反映當前的數(shù)據(jù)變化,否則將會影響索引性能。例如,如果用戶進行數(shù)據(jù)更改,則必須同時更改索引,否則索引在查找時將不會顯示正確的結(jié)果,并且會浪費大量的索引時間。

2.可以創(chuàng)建索引的字段

在Access中,可以根據(jù)一個或多個字段來創(chuàng)建索引。在創(chuàng)建索引時,應考慮索引為經(jīng)常使用的、進行排序的字段,以及在查詢中連接到其他表中的字段。

索引可以幫助加快搜索和選擇查詢的速度,但當用戶添加或更新數(shù)據(jù)時,則會降低索引的性能。如果在包含一個或多個索引字段的表中輸入數(shù)據(jù),則每次添加或更改記錄時,Access都必須更新索引。

其中,表中的數(shù)據(jù)是自動創(chuàng)建索引的。但是,系統(tǒng)無法為數(shù)據(jù)類型為“OLE對象”、“附件”或“計算”的字段創(chuàng)建索引。對于其他字段,如果滿足以下條件,則可以考慮為字段創(chuàng)建索引。

?預期會搜索存儲在字段中的值。

?預期會對字段中的值進行排序。

?預期會在字段中存儲許多不同的值。如果字段中的許多值都是相同的,則索引可能無法明顯地加快查詢速度。

3.多字段索引

當用戶經(jīng)常同時依據(jù)兩個或多個字段進行搜索或排序時,則可以為該字段組合創(chuàng)建索引。例如,經(jīng)常在同一個查詢中為“供貨商”和“產(chǎn)品名稱”字段指定條件,則可以在這兩個字段上創(chuàng)建多字段索引。

依據(jù)多字段索引對表進行排序時,Access會先依據(jù)為索引定義的第一個字段進行排序。而創(chuàng)建多字段索引時,需要指定字段的先后次序。

如果在第一個字段中的記錄具有重復值,則Access會接著依據(jù)為索引定義的第二個字段進行排序,以此類推。在一個多字段索引中,最多可以包含10個字段。

4.2.2 創(chuàng)建索引

要創(chuàng)建索引,需要先決定是創(chuàng)建單字段索引,還是多字段索引。

通過設置【索引】屬性可創(chuàng)建單字段索引。下表列出了【索引】屬性的可能設置。

如果創(chuàng)建唯一索引,則Access不允許在字段中輸入與其他記錄同一字段中存在的值。否則,Access會自動為主鍵創(chuàng)建唯一索引。

1.創(chuàng)建單字段索引

在【導航】窗格中,右擊需要創(chuàng)建索引的表,執(zhí)行【設計視圖】命令。

在【設計】視圖中,選擇需要創(chuàng)建索引的字段,在【常規(guī)】選項卡中,單擊【索引】下拉按鈕,選擇相應的選項即可。例如,如果允許重復,則需要選擇【有(有重復)】選項,否則選擇【有(無重復)】選項,以創(chuàng)建唯一索引。

2.創(chuàng)建多字段索引

在【設計】視圖中,執(zhí)行【表格工具】|【顯示/隱藏】|【索引】命令,在彈出的【索引:職工信息】對話框中,將顯示【員工編號】主鍵的索引。

若為表創(chuàng)建多字段索引,則需要在【索引名稱】列中輸入索引名稱,并在【字段名稱】列中選擇所需要創(chuàng)建索引的字段名稱。

添加索引字段后,系統(tǒng)默認的排序次序為升序排列。此時,可以在【索引:職工信息】對話框中的【排序次序】列中,來設置排序次序。

在【索引:職工信息】對話框中的【索引屬性】中,可以為【索引名稱】列中包含索引名稱的行指定索引屬性。各索引屬性的具體含義,如下表所示。

3.自動創(chuàng)建索引

當用戶導入外部數(shù)據(jù)時,用戶可以根據(jù)導入的內(nèi)容添加索引字段,即自動創(chuàng)建索引。

例如,在導入外部的Excel文件中的數(shù)據(jù)時,可在【導入數(shù)據(jù)表向?qū)А繉υ捒蛑校砑铀饕侄巍?/p>

然后,執(zhí)行【文件】|【選項】命令,在【Access選項】對話框中,激活【對象設計器】選項卡,在【導入/創(chuàng)建時自動索引】文本框中編輯索引字段名稱,并以分號(;)分隔。

4.2.3 編輯索引

創(chuàng)建索引之后,用戶可以隨時查看表中的索引字段。另外,還可以將多余的索引刪除。

1.查看索引

如果想查看表中的索引,以衡量它們對性能的影響,或者確保為特定的字段創(chuàng)建索引,則需要在【導航】窗格中,右擊想要查看索引的表,執(zhí)行【設計視圖】命令,切換到【設計】視圖中。

然后,執(zhí)行【表格工具】|【設計】|【顯示/隱藏】|【索引】命令,在彈出的對話框中可以查看該表中的索引。

除此之外,用戶還可以在該對話框中,編輯索引及索引屬性。

2.刪除索引

當用戶發(fā)現(xiàn)某個索引已變得多余或?qū)π阅艿挠绊懱髸r,則需要刪除該索引。在刪除索引時,系統(tǒng)只會刪除該索引,而不會刪除建立索引時所依據(jù)的字段。

在【設計】視圖中,執(zhí)行【表格工具】|【設計】|【顯示/隱藏】|【索引】命令。在彈出的對話框中,選擇需要刪除的索引所在的行,按下Delete鍵即可。

主站蜘蛛池模板: 胶州市| 邯郸市| 天等县| 且末县| 沅江市| 申扎县| 铁岭市| 灵寿县| 宣汉县| 阳江市| 托克托县| 深水埗区| 六盘水市| 云安县| 金湖县| 中超| 宝丰县| 杭州市| 吉首市| 鲜城| 卢湾区| 海丰县| 望谟县| 庄浪县| 如东县| 赫章县| 台中县| 大石桥市| 眉山市| 柘荣县| 建瓯市| 巴塘县| 宁强县| 兴文县| 华宁县| 辉南县| 姚安县| 五莲县| 曲阳县| 肃南| 明星|