VFP课件之ch4查询和视图

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

创建基于一个表的查询
1、打开查询设计器 2、 添加表或视图 3、定义查询的输出内容 4、设置分组依据 5、设置排序依据 6、对查询结果的其它设置 7、设定查询去向 8、保存查询文件 9、运行查询文件
“查询去向”对话框
浏览: 在浏览窗口显示查询结果
临时表:在临时只读表中存储查询结果
INTO CURSOR TEMP01
创建查询的步骤
1.用查询向导或查询设计器开始建立查询 2.选择包含要搜索信息的表或视图 3.定义查询结果的显示顺序及查询条件 4.设置用于组织查询结果的排序、分组依据 5.选择查询结果的输出去向,如表、报表等 6.运行查询
创建查询的方法
1. 使用界面方法
1)查询向导
2)查询设计器
▪ 用 create query 命令打开查询设计器窗口。 ▪ 选择“文件”菜单中的“新建”或常用工具栏中的“新建” 按钮。 ▪ 在“项目管理器”窗口中的“数据”选项卡中选择“查询”, 并选择“新建”按钮。
2. 命令方法
用modify command 命令进入编辑窗口;
用查询设计器创建查询
创建基于一个表的查询 创建多表查询
创建基于一个表的查询
【例1】查询教师表中工龄满30年的教工 的工号和姓名,查询结果按工号的降序排列, 显示在浏览窗口中。
注意: 在使用查询设计器前,先打开数据 2、 “添加表或视图” 3、定义查询的输出内容 4、设置筛选条件 5、设置排序依据 6、保存查询文件 7、运行查询文件
创建基于一个表的查询
【例2】基于学生表,查询各班级的男女 生人数及各自所占比例,要求输出字段为: 班级(bjbh)、男生人数、男生比例、女生 人数、女生比例,按班级的升序排列,在主 窗口中显示前30%的记录。
创建基于多个表的查询
【例4】基于课程表和成绩表,查询每门 课选课人数、平均成绩、最高分和最低分,查 询输出字段包含课程代号、课程名、选课人数、 平均成绩、最高分和最低分,且按平均成绩降 序排列。(P114 例4.2)
若加上筛选条件:平均成绩在70分以上, 应如果实现?
创建基于多个表的查询
【例5】基于教师表和任课表,查询没有授 课任务的教师名单。
“查询去向”对话框
“添加表或视图”对话框
查询设计器的“杂项”选项卡
创建基于多个表的查询
【例3】查询成绩在80分以上(含80分) 的课程代号、课程名、学生学号和成绩,且要 求结果按课程代号升序排序,课程相同时按成 绩的降序排序。(P111 例4.1)
创建基于多个表的查询
1、添加数据源:KC表和CJ表 2、确定联接类型 3、设置输出内容 4、设置筛选条件 5、设置排序依据
使用视图设计器创建本地视图
在“项目管理器”中选择一个数据库,选择“本 地视图”,然后选择“新建”按钮,打开“视图设计 器”。
或者在数据库已打开时,使用CREATE SQL VIEW 命令显示“视图设计器”。
使用视图设计器基本上与使用查询设计器一样, 但视图设计器多一个“更新条件”选项卡,它可以控 制更新。
两种方法: 1、左联接 2、子查询
用命令方式创建和运行查询文件
一、创建查询文件 1、在命令窗口输入命令:
MODIFY COMMAND 文件名.QPR
2、在编辑窗口输入一条SELECT-SQL命令 3、关闭编辑窗口保存查询文件 二、用命令方式运行查询文件
在命令窗口输入命令:
DO 文件名.QPR 注意:查询文件的扩展名.qpr 不可以省略
可以将一个或多个远程视图添加到本地视图中,以 便能在同一个视图中同时访问VFP数据和远程 ODBC数 据源中的数据
查询与视图的比较
一、查询和视图的共同之处 不论是查询还是视图,其本质都是靠一条SELECT – SQL 命令从指定的数据源中获取所需信息。 二、查询和视图的不同之处 1、使用查询,得到的是一组只读型的检索结果;而使用 视图,可以从表中提取一组记录,改变这些记录的值,并把更 新结果送回到源表中。 2、视图可以作为查询和视图的数据源;但查询不可以作 为数据源。 3、查询以命令文件形式独立存储;而视图必须保存在数 据库中。 4、用MODIFY COMMAND 命令创建查询文件;用 CREATE SQL VIEW 命令创建视图。 5、视图是数据库的一部分,是一个虚拟的表。用DO 命 令运行查询文件;用 USE 命令查看视图。
使用视图更新基表数据
【例1】创建基于xs、kc、cj表,并可修改 cj表中的cj字段的视图ST01。
1、打开视图设计器,新建视图,依次加入xs、cj、 kc三个表作为数据源,设置联接条件及联接方式,选
择输出字段。
2、进入“更新条件”选项卡
注意:1、要使得视图中当前记录的成绩字段能正确更新cj表中 相应记录的成绩字段,必须设置视图中cj表的学号(xh)和课程代 号(kcdh)为关键字段。
联接类型
• 内部联接(INNER JOIN) • 左联接(LEFT JOIN) • 右联接(RIGHT JOIN) • 完全联接(FULL JOIN)
交叉表查询
基于成绩表,查询每个学生的成绩,要求: 每个学生的各门课程的成绩在一行上,如下表所示。
学号 课程1 课程2 课程3 课程4 课程5 课程6 总分 950201 85 65 91 83 87 77 488 950102 76 78 84 65 92 67 462 …… …… …… …… …… …… …… ……
表:将查询结果作为表保存
INTO TABLE TAB01.DBF
图形:使查询结果用于Microsoft Graph
屏幕:在VFP主窗口或当前窗口中显示查询结果
TO SCREEN/TO PRINTER/TO FILE F01.TXT
报表:将结果输出到报表文件(.FRX)
标签:将结果输出至标签文件(.LBX)
视图的本质
ODBC数据源:ODBC (开放式数据互连)是一种 用
于数据库服务器的标准协议,通过ODBC可以 访问多种数据库中的数据,可以安装多种数据 库的ODBC驱动程序,从而使VFP可以与该数 据库相连,访问数据库中的数据。
远程视图:使用远程ODBC数据源。 本地视图:使用VFP的视图或表作为数据源。
相关文档
最新文档