12.設置字段級規(guī)則
打開表設計器,在“字段有效性”框的“規(guī)則”中設置。
【例題】在表設計器的____選項卡中,可以設置記錄驗證規(guī)則,有效性出錯信息,還可以指定記錄插入更新及刪除的規(guī)則。
【解析】本題考查的知識點是表設計器的應用。表設計器中有三個選項卡,在“字段”選項卡中可以設置字段名、類型、寬度、顯示格式等屬性!八饕边x項卡用來設置有關(guān)索引的屬性:“表”選項卡用來設置表名,查看表文件的屬性,記錄有效性規(guī)則,指定記錄插入、更新及刪除的規(guī)則。題目中的屬性設置都是在“表”選項卡中進行。
【答案】表13.表的索引
(1)索引及索引文件的概述
索引是以索引文件的形式存在的,它根據(jù)指定的索引關(guān)鍵字表達式建立的。索引文件可以看成索引關(guān)鍵字的值與記錄號之間的對照表,關(guān)鍵字可以是一個字段,也可以是幾個字段的組合。在建立索引文件時,把表所有記錄的索引關(guān)鍵字表達式的值按指定順序排序,并把每個索引關(guān)鍵字表達式值與該值在表中所對應的記錄對應起來,保存在索引文件中。
索引文件必須與原表一起使用,查詢時根據(jù)索引關(guān)鍵字表達式的值先在索引文件中找到某字段所在的記錄號,然后再到表里直接定位。這樣的查找方式使順序查找和隨機查找都有較高的效率。打開索引文件時,將改變表中記錄的邏輯順序,但并不改變表中記錄的物理順序。
一個表文件可建立多個索引文件,也可同時打開多個索引文件,但在同一時間內(nèi)只有一個索引起作用,這個索引稱為主控索引。
Visual FoxPro系統(tǒng)中支持兩種不同的索引文件類型,即單索引文件和復合索引文件。
單索引文件是根據(jù)一個索引關(guān)鍵字建立的索引文件,文件擴展名為.IDX,它可用INDEX命令的各種形式建立。單索引文件分為標準和壓縮兩種類型。
復合索引文件是指索引文件中可以包含多個索引標識的擴展名為.CDX。每個索引標識與單索引文件類似,也可以根據(jù)一個索引關(guān)鍵字表達式(或關(guān)健字)建立。每一個索引標識均有一個特殊的標識名(TAG)。標識名由字母或下劃線開頭,由字母、數(shù)字或下劃線組成,長度不超過10個字符。用戶可以利用標識名來使用標識,向復合索引文件中追加標識。復合文件中標識的數(shù)目,僅受內(nèi)存和磁盤空間的限制。
復合索引文件又有兩種:一種是獨立復合索引文件;另一種是結(jié)構(gòu)復合索引文件。
結(jié)構(gòu)復合索引文件是由Visual FoxPro自動命名的,與相應的表文件同名,擴展名為.CDX。當Visual FoxPro打開一個表時,便自動查找一個結(jié)構(gòu)復合索引文件,如果找到便自動打開,該索引文件隨表文件同時打開和同時關(guān)閉。
獨立復合索引文件不與表文件同名,擴展名為.CDX。在打開表時不會自動打開此索引文件,由命令指定打開。
索引可分為下列四種類型:
1)主索引
主索引是一個永遠不允許在指定字段和表達式中出現(xiàn)重復值的索引。它也是在數(shù)據(jù)庫表的永久關(guān)聯(lián)中創(chuàng)建參照完整性時主表和被引用表使用的索引。每一個表只能建立一個主索引,只有數(shù)據(jù)庫表才能建立主索引。
2)侯選索引侯選索引也是一個不允許在指定字段和表達式中出現(xiàn)重復值的索引。數(shù)據(jù)庫表和自由表都可以建立侯選索引,一個表可以建立多個侯選索引。
主索引和侯選索引都存儲在.CDX結(jié)構(gòu)復合索引文件中,不能存儲在于獨立復合索引文件和單索引文件中,因為主索引和侯選索引都必須與表文件同時打開和同時關(guān)閉。
3)唯一索引系統(tǒng)只在索引文件中保留第一次出現(xiàn)的索引關(guān)鍵字值。數(shù)據(jù)庫表和自由表都可以建立唯一索引。
4)普通索引是一個最簡單的索引,允許關(guān)鍵字值的重復出現(xiàn),適合用來進行表中記錄的排序和查詢,也適合于一對多永久關(guān)聯(lián)中“多”的一邊(子表)的索引。數(shù)據(jù)庫表和自由表都可以建立普通索引。
普通索引和唯一索引可以存儲在.CDX獨立復合索引文件和.IDX單索引文件中。(2)索引文件的建立
1)命令方式
【格式】INDEX ON<索引關(guān)鍵字表達式>TO<單索引文件>|TAG<標識名>[OF<獨立復合索引文件名>]
[FOR<邏輯表達式>][COMPACT]
[ASCENDING|DESCENDING][UNIQUE][ADDITIVE]
【功能】對當前表文件按指定的關(guān)鍵字建立索引文件。
【說明】<索引關(guān)鍵字表達式>:指定建立索引文件的關(guān)鍵字表達式,可以是單一字段名,也可以是多個字段組成的字符型表達式,表達式中各字段的類型只能是數(shù)值型、字符型和日期型和邏輯型。
當表達式是單個字段名時,字段類型不用轉(zhuǎn)換;應轉(zhuǎn)換成同一類型的表達式。
TAG<標識名>:此選項只對建立復合索引文件時有效,指定建立或追加索引標識的標識名。
OF<獨立復合索引文件>:指定獨立復合索引文件名。若有此選項,表示在指定的獨立復合索引文件中追加一個索引標識,若指定的獨立復合索引文件不存在,系統(tǒng)將自動建立指定的文件。若沒有此選項,表示在結(jié)構(gòu)復合文件中追加一個索引標識,若結(jié)構(gòu)復合索引文件不存在,系統(tǒng)將自動建立結(jié)構(gòu)復合索引文件。
FOR<邏輯表達式>:表示只對滿足條件的記錄建立索引。
COMPACT:此選項只對單索引文件有效,表示建立壓縮索引文件。
ASCENDING|DESCENDING:ASCENDING表示按升序建立索引,DESCENDING表示按降序建立索引。缺省時,按按升序建立索引。單索引文件不能選用DESCENDING選項。UNIQUE:表示建立的是唯一索引。
ADDITIVE:表示保留以前打開的索引文件。否則,除結(jié)構(gòu)復合索引文件外,以前打開的其他索引文件都將被關(guān)閉。
新建的索引文件自動打開,并開始起作用。
【例1】對STUD.DBF表文件建立出生日期單索引文件STUD.IDX。
USE STUD
INDEX ON 出生日期 TO STUD
【例2】對表文件STUD.DBF,建立一個基于出生日期字段的結(jié)構(gòu)復合索引文件。
USE STUD
INDEX ON 出生日期 TAG 出生日期 DESCENDING
【例3】在表文件STUD.DBF的結(jié)構(gòu)復合索引文件中,按學號追加一個標識。
USE STUD
INDEX ON 學號 TAG 學號
【例4】在表文件STUD.DBF的結(jié)構(gòu)復合索引文件中,先按性別再按學號追加一個標識XBXH。
USE STUD
INDEX ON 性別+學號 TAG XBXH
相關(guān)推薦:北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |