visualfoxpro程序设计教程第13章.ppt

上传人:tia****nde 文档编号:12806509 上传时间:2020-05-25 格式:PPT 页数:19 大小:582KB
返回 下载 相关 举报
visualfoxpro程序设计教程第13章.ppt_第1页
第1页 / 共19页
visualfoxpro程序设计教程第13章.ppt_第2页
第2页 / 共19页
visualfoxpro程序设计教程第13章.ppt_第3页
第3页 / 共19页
点击查看更多>>
资源描述
第13章查询与视图,13.1使用查询设计器创建查询13.2使用SQL语言的SELECT语句创建查询13.3创建视图13.4查询视图,查询就是向一个数据库发出检索信息的请求,从中提取符合特定要求的记录。利用查询可以实现对数据库中数据的浏览、筛选、排序、检索、统计及加工等操作。查询文件的扩展名为.qpr,查询被运行后,系统会生成一个编译后的查询文件,扩展名为.qpx。运行查询文件可以得到一个基于表和视图的数据集合,查询结果可以用不同的形式来保存,查询结果中的数据是只读的。创建查询的方法:使用查询向导使用查询设计器使用查询命令(SQL语言的SELECT语句),创建查询文件可实现如下查询要求:单表查询多表连接查询查询所选字段查询所选记录查询表达式的值对查询结果进行排序分组进行查询并计算每组的统计数据对组进行筛选指定查询输出的去向在查询中删除重复记录查询一定数目或一定百分比的记录,13.1使用查询设计器创建查询,举例:1.查询“计算机”系的学生的学号、姓名、和出生日期,结果按学号升序排。2.查询“计算机”系的学生的姓名、性别、年龄,结果按年龄升序排。3.查询都有哪些系,要求系不能重复。4.查询选了“001”号课的学生的姓名和成绩,结果按成绩降序排,结果放到表成绩001号课表中。5.查询“计算机”系学生选了“001”号课学生的姓名、成绩,结果按成绩降序排。,6.查询成绩在80及80分以上的学生的姓名、课程名和成绩,输出时先按课程名升序排,课程名一样的再按成绩降序排。7.查询平均成绩大于等于80的学生的学号、姓名平均成绩。8.查询各科成绩的最高分。结果包括课程名和最高分两列。9.查询选课人数多于10人的课程名和选课人数。10.查询数学成绩前5名的学生的姓名和数学成绩。,13.2使用SQL语言的SELECT语句创建查询【语句格式】SELECTALL|DISTINCT,FROM,WHEREGROUPBYHAVINGORDERBYASC|DESC,其中:SELECT子句:指定要显示的属性列FROM子句:指定查询对象(基本表或视图)WHERE子句:指定查询条件GROUPBY子句:对查询结果按指定列的值分组,该属性列值相等的元组为一个组。通常会在每组中作用集函数。HAVING短语:筛选出只有满足指定条件的组ORDERBY子句:对查询结果表按指定列值的升序或降序排序,表间的联接方式:内联接、左联接、右联接和全联接。内联接:INNERJOIN,只有两个表中都满足联接条件的记录才拼接。左联接:LEFTJOIN,是将左表中的记录分别与右表中的记录进行联接,满足联接条件就进行拼接,不满足条件时,右表字段为NULL值。右联接:RIGHTJOIN,是将右表中的记录分别与左表中的记录进行联接,满足联接条件就进行拼接,不满足条件时,左表字段为NULL值。全联接:FULLJOIN,是将两个表先进行一次左联接,再进行一次右联接,然后去掉重复记录的结果。,13.3创建视图在数据库中可以独立存在的表称为基本表。而视图则是从一个或多个基本表或视图中导出的虚拟表,视图中显示的数据是基于基本表的数据,即在视图中看到的数据实际存储在基本表中,在数据库中只是存放视图的定义。视图是查看或使用基本表中部分数据的一个窗口。视图不以独立的文件形式保存,视图的定义存储在数据库中。视图的数据源可以是自由表、数据库表或另一个视图。视图中看到的数据可以更新。更新视图中的数据实际是更新基本表中的数据,因为这些数据实际在基本表中。,VFP的视图分为本地视图和远程视图两种。本地视图所能更新的源表是VFP的数据库表或自由表,这些数据库表或自由表未被放在服务器上,称这些数据库表或自由表为本地表。远程视图所能更新的源表可以来自放在服务器上的VFP的数据库表或自由表,也可以来自远程数据源。视图可以增强数据的安全性,简化数据的操作。,本地视图的创建方法:1.使用视图向导建立本地视图2.使用视图设计器创建本地视图3.用命令方式创建本地视图【格式】CREATEVIEWAS【功能】在打开数据库的前提下创建视图。,【举例】1.建立“数学”系学生的视图“数学系学生”,要求只可对姓名和是否班干部进行修改,记录按学号升序排。使用设计器创建:1)添加表:学生表2)“字段”选项卡:选所有字段3)“筛选”选项卡:所在系=数学4)“更新条件”选项卡:设置“关键字段”为学号,设置“可更新字段”为姓名和是否班干部,选中复选框“发送SQL更新”。5)保存该视图,名为“数学系学生”,使用命令创建:CREATEVIEW数学系学生AS;SELECT*;FROM学生-课程!学生;WHERE学生.所在系=数学注:使用设计器设计完后,可通过“查看SQL”查看自动生成的创建该视图的SELECT子句。,2.建立视图“网络系选课”,其中包含“网络”系所有学生的学号、姓名、所选课程的课程号、课程名、学分及成绩,要求只能对成绩修改,记录先按学号升序排,学号一样的再按课程号升序排。使用设计器创建:1)添加表:学生表、选课表、课程表2)“字段”选项卡:选课.学号、学生.姓名、选课.课程号、课程.课程名、课程.学分、选课.成绩。3)“联接”选项卡:学生.学号=选课.学号课程.课程号=选课.课程号4)“筛选”选项卡:所在系=网络5)“更新条件”选项卡:设置“关键字段”为选课.学号和选课.课程号,设置“可更新字段”为成绩,选中复选框“发送SQL更新”。6)保存该视图,名为“网络系选课”,使用命令创建:CREATEVIEW网络系选课AS;SELECT选课.学号,学生.姓名,选课.课程号,;课程.课程名,课程.学分,选课.成绩;FROM学生INNERJOIN选课INNERJOIN课程;ON课程.课程号=选课.课程号;ON学生.学号=选课.学号;WHERE学生.所在系=网络;ORDERBY选课.学号,选课.课程号注:使用设计器设计完后,可通过“查看SQL”查看自动生成的创建该视图的SELECT子句。,13.4使用视图1.视图的修改和浏览视图的定义存储在数据库中,可打开数据库设计器修改视图的定义和浏览视图中显示的信息,也可在项目中选中视图,使用“修改”和“浏览”按钮进行修改和浏览。,3.查询视图可以对视图进行查询,查询视图和查询表的操作是一样的。【举例】创建查询文件,从上面创建的“数学系学生”的视图中查询学号为“0302”的学生的姓名和出生日期。方法一:用查询设计器查,类似查询表方法二:使用命令查,类似查询表,
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!