6.3.2 建立 VFP的数据库
前面建立的表都是自由表,而实际上一个应用系统总是由多个相关表构成的。要在多个自由表之间建立联系,必须通过数据库来实现。
数据库本身是不存储数据的,它只存储表、视图及它们之间的关系等。在数据
库中的表叫做数据库表,数据库为数据表提供了数据字典、各种数据保护和数据管理功能,所以数据库表比自由表要完善得多。一个数据库是由数据库文件(。DBC)、数据库备注文件(。DCT) 和数据库索引文件(。DCX) H类文件组成的。
l.建立数据库文件
2.创建数据库表
可以直接在数据库中建立数据表,也可以将自由表添加到数据库中,但是不能将另一个数据库中的表拉到当前数据库中来。可以在同一个数据库中建立多个表。
(1)添加数据表。打开选定数据库的“数据库设计器”窗口,在“数据库设计器”工具栏中,单击“添加表” 选项,将会弹出“打开”窗口,选择要添加的表后,单击“确定” 按钮,就可以把一个自由表添加到当前数据库中,并将自由表变成数据库表。
(2)创建数据库表。也可以在数据库设计器中直接创建数据表。首先单击“数据库设计器”工具栏的“新建表” 按钮,然后在对话框中 单击“新建表” 按钮,将打开数据库“表设计器”。
通过这几个控制区信息的描述,可以实现数据库对数据表的管理功能。
数据库表添加或创建完成以后,关闭数据库设计器窗口。包含了数据表的数据库文件就保存在外存储器中。
3.数据库文件的打开与关闭
(1)数据库文件的打开。一般通过单击主菜单“文件” 下拉菜单的“打开”功能。在弹出的“打开” 对话框窗口选定数据库文件后,单击“打开”按钮打开。
在打开一个数据库表的时候,系统也会自动先打开其数据库文件,然后再打开选定的表。
(2)数据库文件的关闭。除了可以通过像关闭其他Windows窗口一样,关闭“数据库设计器” 窗口来关闭当前数据库以外,还可以使用专门的命令来关闭数据库。
6.3.3 设置数据表的索引
1.索引表和索引文件
用户对数据表常常会有不同的需求,为了加快数据的检索、显示、查询和打印速度,就需要对文件中的记录顺序进行重组。实现的方法一般有两种:一种叫做排序;另一种叫做索引。
排序的作用是按指定字段或字段组中数据值的大小顺序,以递增(升序) 或递减(降序) 方式重新排列全部数据记录,并生成一个新的数据表文件。
索引不建立一个新的数据表文件,只是按照给定字段表达式值的大小,生成一个索引表,并使数据表中的记录按索引表的要求以递增(升序) 或递减(降序) 顺序显示。
索引技术除可以重新排列数据表记录的前后顺序外,在建立数据表间的关联时,或者利用 SQL语言建立查询、视图时,都必须*索引技术来支持。
2.索引关键字的类型
索引关键字:是由一个或若干个字段构成的索引表达式。索引表达式的类型决定了不同的索引方式。VFP系统提供了四种不同的类型,它们分别是主索引、候选索引、普通索引和惟一索引。
(1)主索引。主索引是能够惟一地确定数据表中一条记录的字段或字段组合表达式;要求该字段或字段组合表达式的值,在数据表的全部记录中都不能出现重复。
主索引只能在数据库表中创建和使用,而且一个数据表只能指定一个主索引。表的主索引就相当于关系的主码。
(2)候选索引。候选索引像主索引一样,是能够惟一地确定数据表中一条记录的字段或字段组合表达式。但是,一个数据表允许建立多个候选索引,可以在数据库表或自由表中创建候选索引。如果将一个包含了重复数据的字段指定为候选索引,系统会返回一个