计算机软件及应用数据库表
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
INDEX ON 姓名+STR(职务补贴) TAG xbbt OF Rs.cdx
3. 重新建立索引文件
在数据表的使用过程中,当增删记录或数据表中被 索引文件使用的关键字段改动时,结构化复合索引 会随着数据表的打开自动打开并能及时得到更新, 但如果在使用数据表时未打开相应的独立复合索引 文件或传统的单入口.IDX索引文件,则索引文件会 因为无法及时更新而产生错误索引。这时须打开索 引文件,并对其重新索引。
3.4.1 索引文件及分类
3. 索引的类型 (1)主索引 主索引通常是数据表的关键字索引,作为主索引 的字段称为主关键字。主索引不能用在自由表中, 而只能用在数据库表中,可用于在永久关系中建 立参照完整性。创建主索引的字段不允许有重复 值,且一个表只能有一个主索引。
例如,在数据表中,常用学生证号、身份证号、 工作证号等作为主索引,而姓名可能有同名的情 况,一般不能作为主索引。
设定主控索引后,利用LIST、DISPLAY命令输出的 记录顺序也是排序后的顺序。
需要特别强调的是,主控索引只是改变了记录的输 出顺序,记录在数据库中的顺序并没有发生变化。
通过VFP的USE命令和SET ORDER TO命令也可以指 定主控索引。
3.4.1 索引文件及分类
3. 索引的类型
(4)普通索引
普通索引没有上面各索引的限制,是 允许重复索引值的索引。作为普通索 引的字段,其字段值可以重复,也可 以作为排序的依据,但因为可能有多 个相同的索引值,因此查询时会找到 多个符合条件的记录。一个数据表中 可以有多个普通索引。
3.4.2 创建索引文件
3.4.1 索引文件及分类
3. 索引的类型 (2)候选索引
候选索引类似于主索引,其索引值就不能有重复 值。与主索引不同的是,一个数据表中可以有多 个候选索引,而且侯选索引不能用来在永久关系 中建立参照完整性。
(3)惟一索引
惟一索引表示索引值只能取一个,如果有两个或 两个以上的索引值,则只能取其中一个,因此, 惟一索引使用时可能会隐藏一些记录。例如,若 有两个同名的人员,将姓名字段作为惟一索引, 则只能找到一个记录,另一个记录将不会找到。
原数据表中的顺序是按输入的顺序存储在表中的, 在索引文件中,记录是按索引关键字值的顺序排列 的,当要查找某一编号的记录时,VFP先在索引文 件中查找该编号,找到后再根据对应的记录号,在 数据表中将记录指针快速移动到该记录上。
一个索引文件中可以只有一个索引,也可以有多个 索引。可以包含多个索引的索引文件称该文件为复 合索引文件。在复合索引文件中,需要为每个索引 指定一个索引标识名,以便于通过索引标识相互区 分各个索引。
USE RSDA INDEX ON 编号 TAG NBH CAND INDEX ON 性别+CTOD(出生日期) TAG XBCSRQ
2. 建立独立复合索引文件
独立复合索引文件的扩展名也是.CDX,但其主文件名与数 据表文件名不相同,且使用时还需单独打开。独立复合索 引文件主要用来创建那些使用不太频繁的索引。
重执行一遍INDEX命令即可重新索引,更简捷的方 法是在浏览窗口中打开数据表,然后选择菜单 “表”、“重建建立索引”命令,或打开数据表后 用REINDEX命令重新建立索引。
【格式】REINDEX
3.41..指3定索主控引索文引 件的使用
一个数据表可以建立多个索引文件,每个索引 文件中又可能包含多个索引,而一种索引就是 一种排序方式,所以,在使用索引时,必须指 明哪一个索引是对数据表记录排序起作用的, 即指定主控索引。在没有指定哪一个索引为主 控索引之前,数据表的访问顺序仍然是原来的 物理顺序,即按记录号的顺序访问。
3.4.1 索引文件及分类
2. 索引文件的分类 VFP支持传统的单入口索引文件(扩展名为.IDX) 和复合索引文件(扩展名.CDX),其中.IDX索引文 件中只包含一个索引,而.CDX索引文件中可以包含 有一个或多个索引,所以称为复合索引文件。
复合索引文件,又可分为结构化复合索引文件和非 结构化复合索引文件两种,其区别在于:结构化复 合索引的主文件名与数据表的主文件名相同,并随 着数据表的打开而打开,在添加、更改或删除记录 时会自动进行维护;而非结构化复合索引文件的主 文件名与数据表文件不同,必须用命令打开。
3.4 索引文件及其应用
3.4.1 索引文件及分类
1. 索引文件
索引文件:它仅由两个字段组成,一个字段 是排序的关键字值(也可以是一个表达式), 另一个字段是每个关键字在原始数据表中对应 的记录号。例,在Rsda.dbf数据表中,以编号 为关键字段并按升序建立的索引文件的示意图 如下图所示。
1. 索引文件
主控索引和主索引是完全不同的概念。主索引 是用来控制数据的完整性的,而主控索引是用 来指定目前记录排列顺序的。
1. 指定主控索引
(1) 指定结构化复合索引文件中的索引为主控索引 在浏览窗口中打开数据表(以表Rsgz.dbf为例), 选择菜单“表”、“属性”命令,即弹出“工作区 属性”对话框,单击“索引顺序”下拉列表,选择 一个索引标识名 ,浏览窗口中记录的排列顺序会立即 根据选择的主控索引发生变化
独立复合索引文件不能在表设计器中创建,命令建立。
【格式】INDEX ON <表达式> TAG <索引标识名> OF <独立复合索引文件名>
[FOR <条件表达式>=[ASCENDING|DESCENDING]
[UNIQUE|CANDIDATE][ADDITIVE]
USE RSDA
INDEX ON 编号 TAG bh OF Rs.cdx
1. 建立结构化复合索引文件 (1) 在表设计器中创建索引文件
(2) 命令方式创建索引 【格式】INDEX ON <表达式> TAG <索引标识名> [FOR
wenku.baidu.com<条件表达式>]
[ASCENDING|DESCENDING][UNIQUE|CANDIDATE][ADDIT IVE] 【功能】建立结构化复合索引文件。