课后练习
4.5 任务四 建立超市管理系统索引
4.5.1 相关知识
索引是按某一关键字表达式排序建立的文件,为了加快数据表记录的检索、显示、查询的打 印速度,需要对数据表记录进行重新组织。索引如同书的目录,通过目录,读者可以快速找到所
需要的内容,索引可以使用户快速找到表中的数据。实现这个目的的方法有两种:排序和索引。
Visual FoxPro 中常见的是复合索引(.CDX)文件,包括:结构复合索引文件——与表文 件同名;独立复合索引文件——任意文件名。
Visual FoxPro 允许创建两种类型的索引文件,即单索引文件和复合索引文件。在单索引 文件中包含一个索引项,默认扩展名为.IDX。如果有多个索引项存放在同一索引文件中,这
图 4-37 表设计器
选择字段,打开“索引”选项卡,选择排序方式,如图 4-38 所示。这样创建的是普通索 引(默认)。
图 4-38 设计索引 创建其他类型索引,切换到“索引”选项卡。
② 字段表达式索引。多个字段合在一起作为索引关键字,它们必须都变成相同类型——
字符型。
方法:在数据库设计器中打开数据库,选定要建索引的表,打开表设计器,选定“索引”
选项卡,单击“确定”按钮。
说明:
索引名:索引标识名,<=10 个字符。
类型:要创建索引标识的类型。
表达式:索引关键字表达式,都转换成 C 型。
筛选:输入条件表达式,选择参加索引的记录。
箭头按钮:在索引名左侧,表示索引顺序:升序、降序。
(2)使用 Index 命令。
功能:创建结构、独立复合索引文件。不能创建主索引。
格 式 : INDEX ON 关 键 字 表 达 式 TAG 标 识 名 [OF 独 立 索 引 名 ] [FOR 条 件 ] [ASCENDING|DESCENDING] [ADDITIVE] [UNIQUE |CANDIDATE]
说明:
[ASCENDING|DESCENDING]:升序或降序。
[ADDITIVE]:创建独立复合索引时,可以使先前打开的独立索引保持打开。
[UNIQUE]:创建唯一索引。
[CANDIDATE]:创建结构复合索引中的候选索引。
4.索引的操作
说明:不论在创建索引项时定义为升序还是降序,可以用选项 ASCENDING 临时指定为 升序;用选项 DESCENDING 临时指定为降序。
5.索引项的删除
图 4-41 多个字段进行排序
图 4-42 对记录进行排序
(1)打开已建好索引的表。
(2)单击“浏览”按钮。
(3)从“表”菜单中选择“属性”命令。
(4)在“索引顺序”下拉列表框中,选择要使用的索引。单击“确定”按钮,如图 4-42 所示。
4.控制字段中重复
在“索引”选项卡“类型”一栏中,将某一字段设置为“主索引”或“候选索引”就可 以控制字段重复值的输入,强制在字段中输入唯一的值,如图 4-43 所示。
图 4-43 设置索引类型控制字段重复 5.结构复合索引
对供货商.dbf 表建立复合索引,格式如下:
INDEX ON 供货商编号 TAG nx 6.索引类型
(1)主索引。建立方法:
① 打开已建好索引的表。
2.对生产商表中的厂商编号字段建立候选索引。
命令:FIND <字符串>/<数值常量>
功能:在表文件的主控索引中查找定位关键字值与<字符串>或<数值常量>相匹配的第一
(3)<字符表达式>转换为日期表达式函数 CTOD()。
语法:CTOD(<字符表达式>)