Visual FoxPro 程序设计:第5章 查询与视图_第1页
Visual FoxPro 程序设计:第5章 查询与视图_第2页
Visual FoxPro 程序设计:第5章 查询与视图_第3页
Visual FoxPro 程序设计:第5章 查询与视图_第4页
Visual FoxPro 程序设计:第5章 查询与视图_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第5章 查询与视图,在数据库的应用中,查询是数据处理中不可缺少的、最常用的。VFP 6.0提供了两种较好的方法,这就是查询文件和视图文件。使用“查询设计器”,能方便地生成一个查询,从而获得用户所需要的数据。视图能帮助用户从本地或远程数据源中获取相关数据,而且还可以对这些数据进行修改并更新,VFP 6.0将自动完成对源表的更新。,查询,查询: 从数据表中获取所需要的结果 即设定一些过滤条件,并把这些条件存为查询文件 在每次查询数据时,调用该文件并加以执行 查询出来的结果可以加以排序、分类 查询出来的结果可存储成多种输出格式 图形 报表 标签,视图,视图: 能够从本地或远程表中提取一组记录 使用视

2、图可以处理或更新检索到的记录 即设定条件,可从几个数据表文件中过滤出所要求的数据,其结果存储成实际的记录数据 可以当作实际的数据表文件来使用 视图中的数据记录更改后,原表中的记录也要随之修改,查询与视图的区别,存在差异: 结果 查询的执行结果可以存储成多种数据格式 视图的查询结果同一般的数据表文件一样,可以当作数据表文件来使用 数据 查询供输出查看,并不能回存 视图则可修改并且回存到数据表中 即 查询文件的结果不属于数据库 而视图文件存在于数据库中 视图的数据来源: 数据表文件 视图 服务器上的数据表文件,SQL简介,结构化查询语言 SQL(Structure Query Language)

3、目前美国国家标准组织ANSI的标准数据语言 已有100多个数据库管理产品支持SQL语言 已在微型计算机、小型机乃至大型机等各种机型上运行 用户只需要指出“干什么”,而不需要知道“怎么干”,即存取路径的选择和SQL语言操作的过程由系统自动完成 语言结构接近英语口语,是一种用户性能良好的语言,非常便于用户的学习和掌握,SQL语言查询操作: 用SELECT语句来完成的 它是SQL语言中最重要、最核心的一条语句。 同时它也是SQL语句中最复杂并且最难掌握的一条语句,1.SQL的格式,SELECT语句的基本格式如下: SELECT列名表 FROM表名 WHERE条件表达式 ORDER BY排序项目ASC

4、/DESC,ASC/DESC.,Select说明:,SELECT子句的列名表 指出要显示的列的字段名 可选一个或多个字段 多个字段间用逗号分开 “*”可以用来表示某一个数据表中的所有字段,FROM子句的表名 指出在查找过程中所涉及的表 可以是单个表,也可以是多个表 多个表之间应用逗号分开,WHERE子句的条件表达式 指出所需数据应满足的条件 条件表达式中必须用到比较运算符或逻辑运算符,逻辑运算符 AND 与 OR 或 NOT 非,比较运算符 = 等于 LIKE 可能 ,!=,# 不等于 大于 = 大于等于 小于 = 小于等于,ORDER BY子句,可以控制查询所得记录的排列顺序 排序项目: 指

5、出按哪一列的值进行排序 它可以是字段名或表达式 ASC表示按升序 DESC表示降序 缺省时按升序排列 多个条件逗号分开 先按第一列的值排,第一列值相同,再按第二列的值排序,依次类推,使用举例,单表查询 即所有查询信息均出自一个表中 在SELECT语句中表现为FROM子句中只有一个表名。 查询 无条件查询 条件查询,无条件查询,要获取表中所有的记录,则无需指定任何条件 无条件查询仅涉及SELECT子句和FROM子句 可以通过SELECT子句指定获取部分列或全部列的信息,例如: 查询显示库中表中的所有信息,并按职称排序 select * from 职工档案 order by 职称 例如: 查询显示

6、“职工档案”数据表中,职工姓名及年龄信息 select 姓名,年龄 from 职工档案,条件查询 无条件查询是选取表中的所有记录 实际应用中,用得更多的是条件查询 即选取表中满足一定条件的记录 SELECT语句中的条件由WHERE子句指出 WHERE子句后的条件表达式的值可以为真或假 执行时,把条件为真的记录反馈回来 对条件为假的那些记录信息,则什么也不执行,WHERE子句的格式,WHERE 多重条件,应使用逻辑运算符来连接几个简单条件 对于字符型常量应加引号 例如: 查询显示表中,年龄大于35的职工信息 select * from 职工档案 where 年龄35,例如: 查询显示表中,职称是

7、讲师的并且性别是女的职工姓名。 select 姓名 from 职工档案 where 职称=讲师 and 性别=女 LIKE运算符可以用来进行模糊查询 例如: 查询显示“职工档案”数据表中,姓“刘”职工的职称信息。 select * from 职工档案 where 姓 like “刘% 上例“刘%”的含义是以“刘”打头的任意长度的字符串 对长度已知的匹配串,可用“-”确定,多表查询 从多个数据表中提取信息 将两个或多个表的记录通过相关字段(连接字段)结合在一起,这种运算称为连接运算 连接运算是关系运算中的重要功能,它也是区别关系与非关系系统的重要标志,关系型数据库的三种运算,三种运算 选择 投影

8、 连接: 通过两表的公共字段()来实现,例如: 查询显示所有职工的姓名、职称及实发工资 select 职工工资.姓名,职工档案.职称,职工工资.实发工资; from 职工档案,职工工资; where 职工档案.姓名=职工工资.姓名,执行查询时,先从“职工档案”表中读出一个记录 依次到“职工工资”表中读取每一个记录与“职工档案”表中数据拼接成一个新的记录,并判别其中的两个姓名字段值是否相等 若相等,取SELECT语句中相应的列作为结果输出 如此循环,即求出了连接的所有元组,SQL语句的使用方法,使用方法 (1)在命令窗口中使用 当作一条独立的VFP命令在命令窗口中使用, 执行SQL命令前先要打开

9、要查询的数据库 (2)在VFP 6.0程序中使用 (3)在查询设计器中使用,建立查询.QPR,步骤: (1)使用查询向导或查询设计器开始建立查询 (2)选择出现在查询结果中的字段 (3)设置选择条件来查找所需结果的记录。 (4)设置排序或分组选项来组织查询结果。 (5)选择查询结果的输出类型:表、报表、标签、浏览窗口等。 (6)查询可以用文件加以保存,它存为后缀为.QPR的文件中。 (7)运行查询。,查询结果去向,输出去向 实现功能 浏览 在浏览窗口中显示出来 临时表 存于用户命名的只读的临时表中 表 用户命名的表中 图形 将查询结果与Microsoft Graph一起应用 屏幕 显示于VFP

10、的主窗口中或当前活动输出窗口中 报表 输出到报表文件(.FRX)中 标签 输出到标签文件(.LBX)中,为查询结果排序,决定了查询输出结果中记录或输出行的先后次序 排序的操作步骤如下: 项目管理器的数据选项卡中,选择查询 再选择查询,然后按“修改” 在查询设计器中,选择排序依据选项 在选定字段框中,选择排序字段 按“添加”按钮,筛选查询结果,操作步骤如下: 打开要进行查询的数据库所在的项目 选择“查询” 然后按“修改” 选择“筛选”选项卡 在“筛选”选项卡中,“字段名”选择筛选字段,“否”和“条件”构造运算符,构造出筛选表达式,查询结果的分组,分组就是为了把类似的记录压缩为一个结果记录,从而完成一组记录的计算 分组 “查询设计器”中的“分组依据”选项卡 在“分组依据”选项卡的“可用字段”中 选择“性别”字段 单击“添加”,视图,视图:是一组可修改的记录 本地视图 远程视图 它的来源 本地表 其它视图 存

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论