《Visual FoxPro 6.0基础知识 第八章》由会员分享,可在线阅读,更多相关《Visual FoxPro 6.0基础知识 第八章(17页珍藏版)》请在金锄头文库上搜索。
1、第八章 查询与视图,8.1 创建查询 8.2 创建视图,8.1 创建查询,查询可以使用户从数据表中获取所需要的结果。执行查询就是设定一些过滤条件,并把这些条件存为查询文件,在每次查询数据时,调用该文件并加以执行。查询出来的结果可以加以排序、分类,并存储成多种输出格式,如图形、报表、标签等形式。,8.1.1 利用“查询向导”建立查询,利用“查询向导”创建查询,操作步骤如下: 在“项目管理器”中选择“数据”选项卡,然后选择“查询”。 选择“新建”。 选择“查询向导”按钮。 选择所建查询的类型。 按照向导屏幕上的指令进行操作。,【例8.1】利用“查询向导”创建一个单表查询文件“教师情况”,要求查询j
2、sqk.dbf表中男教师的“bh”(编号)、“xm”(姓名)、“xb”(性别)、“csrq”(出生日期)和“zc”(职称)字段的内容,查询结果以“bh”字段的升序排列。,8.1.2 利用查询设计器设计查询,除了使用“查询向导”创建查询之外,还可以使用“查询设计器”来建立查询,也可以在“查询设计器”中修改已有的查询。 利用“查询设计器”创建查询,步骤如下: 1. 在“项目管理器”中,选择“数据”选项卡,然后选择“查询”选项。 2. 单击“新建”按钮,弹出“新建查询”对话框。 3. 单击“新建查询”按钮,添加建立查询的表,选择出现在查询结果中的字段。 4. 设置选择条件来查询给出所需结果的记录。
3、5. 设置排序或分组选项来组织查询结果。 6. 选择查询结果的输出类型,包括浏览、表、报表等。 7. 运行查询。,8.1.3 查询的运行和修改,在建立查询之后,可以运行查询查看结果。运行查询,有三种方法。 1. 在“项目管理器”的“数据”选项卡中选择要运行的查询文件名,然后单击“运行”按钮即可。 2. 选择查询文件,单击“修改”按钮,打开“查询设计器”窗口,然后选择“查询”菜单下的“运行查询”命令,或者在工具栏选择按钮。 3. 用命令方式运行查询文件,格式为:DO 查询文件名。 修改查询如上方法2所述,就可打开“查询设计器”修改查询;还可以用命令方式,格式为:MODIFY QUERY 查询文件
4、名。,8.1.4 定向输出查询结果,设置查询结果的输出类型,打开“查询设计器”工具栏中的“查询去向”按钮,弹出“查询去向”对话框,如图所示。在该对话框中,有7个查询结果输出去向。,浏览:在“浏览”窗口中显示查询结果。 临时表:将查询结果保存在临时表中。 表:将查询结果作为表文件保存起来。 图形:使查询结果可用于Microsoft Graph,图形使包含在Visual FoxPro中的一个独立的OLE应用程序。 屏幕:在活动输出窗口中显示查询结果。 报表:向报表文件发送查询结果。 标签:向标签文件发送查询结果。 通常,查询的结果默认显示在浏览窗口中。,8. 2 创建视图,视图是一个定制的虚拟表。
5、使用视图,可以从表中将我们用到的一组记录提取出来组成一个虚拟表,而不管数据源中的其他信息,并可以改变这些记录的值,并把更新结果送回到源表中。这样,我们就不必面对数据源中所有的信息,加快了操作效率;而且,由于我们的视图不涉及数据源中的其他数据,加强了操作的安全性。 视图是基于数据库的,视图中的数据必须取自于数据库中的表,在数据库中只存储视图的定义,不存储视图对应的数据,这些数据仍然存储在原来的数据库表中。因此,创建视图之前必须有数据库。,8.2.1 利用“视图向导”创建视图,利用“视图向导”创建视图,步骤如下: 1. 在“项目管理器”中,选定一个数据库。 2. 选定“本地视图”,选择“新建”按钮
6、。 3. 选择“视图向导”按钮。 4. 按照向导屏幕上的指令操作。,8.2.2 用视图设计器创建视图,利用“视图设计器”创建本地视图,步骤如下: 1. 从“项目管理器”中选定一个数据库,展开该数据库。 2. 选择“本地视图”并选择“新建”按钮,弹出“新建本地视图”按钮。 3. 单击“新建视图”按钮,在“添加表或视图”对话框中,选定需使用的表或视图,再选择“添加”。 4. 选择完视图中想要添加的表和视图后,选择“关闭”。 5. 出现“视图设计器” ,选择要在视图结果中显示的字段。 6. 设置筛选条件来给出视图中所包含的记录。 7. 设置排序或分组选择组织视图数据。 8. 浏览视图。,【例8.2】
7、利用“视图设计器”创建一个多表本地视图“教师工资”视图,视图中包含jsqk.dbf和jsgz.dbf表中的“bh”、“xm”、“xb”、“jbgz”、“gwgz”和“sfgz”字段,查询结果以“sfgz”升序排列。,8.2.3利用视图更新数据,在“视图设计器”中,“更新条件”选项卡可以控制把对视图数据的更新返回给数据表中。如果对视图所做的更新要发回到数据源中,必须设置“发送SQL更新”选项,并且至少要设置一个关键字段来使用这个选项。如果选择的表中有一个主关键字段并且已在“字段”选项卡中,则“视图设计器”自动使用表中的该主关键字段作为视图的关键字段。,【例8.3】利用本地视图“教师情况”视图,更
8、新jsqk.dbf表中的数据。,步骤如下: 1. 选择“教师情况”视图,单击“修改”按钮,打开“视图设计器”窗口。 2. 切换到“更新条件”选项卡,在可更新字段符号下设置更新字段为“xm”、“xb”和“csrq”,选中“发送SQL更新”复选框,将视图的更新返回到源表中,如图所示。,3. 单击“视图设计器”窗口中的“关闭”按钮,弹出系统消息框,单击“是”按钮,将对视图的更改保存,并返回“项目管理器”窗口。 4. 打开“教师情况”视图浏览窗口,同时也打开jsqk.dbf表的浏览窗口,如图所示。,5. 将“教师情况”视图中的第一条记录更改为如下:“40001”,“王大强”,“男”,“09/07/71”,“教授”,“信息学院”。更改完成后再将记录指针定位到第二条记录上,观察视图和数据源表之间的修改变化,如图所示。,可以看到,jsqk.dbf表中的“xm”字段已随着视图文件的修改而自动更新了,这表明视图中的设置“可更新字段”生效,而“zc”字段没有更新,因为该字段在视图文件中未设置为“可更新字段”。,