数据库的高级操作.ppt_第1页
数据库的高级操作.ppt_第2页
数据库的高级操作.ppt_第3页
数据库的高级操作.ppt_第4页
数据库的高级操作.ppt_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

第5章数据库的高级操作*,5.1SQL语言5.2查询5.3报表5.4标签,学习目标,了解SQL语言,熟悉SQL的查询命令;掌握查询的创建和使用查询多样化输出;掌握报表设计步骤和运行方法;了解标签的设计与使用。,重点与难点,重点在于SQL的查询命令、查询输出和报表设计;难点在于报表的设计。,5.1SQL语言,SQL是一种介于关系代数与关系演算之间的结构化查询语言(StructuredQureyLanguage,SQL),其功能并不仅仅是查询,还具备数据定义等功能,支持关系数据库的三级模式结构,其中外模式对应于视图和部分基本表,模式对应于基本表,而内模式对应于存储文件。,SQL语言的特点,(1)类似于英语自然语言,容易学;(2)是一种非过程语言;(3)是一种面向集合的语言;(4)既可独立使用,又可嵌入到宿主语言中使用;(5)具有查询、操纵、定义和控制一体化功能。注意:VFP所支持的SQL语言并不是全部的SQL语言。,5.1.1SQL数据定义功能,1定义基本表2定义视图,1定义基本表,SQL语句如下:createtable(字段名1,类型(宽度,小数点位数)null|notnullcheckerrorprimarykey|unique,字段名2)foreignkey字段名tag索引标识名references表名1其中,null子句表示该字段中是否允许空值。check子句给出字段有效性规则,以及违背规则的出错信息。primary子句给出是主索引,还是候选索引,用于数据库表的定义。foreignkey子句指出关联表的外码。,【例5.1】定义一个学生表,并显示表的结构。c-字符型,d-日期型,n-数值型。xh:学号、xm:姓名、xb:性别;csrq:出生日期;sg:身高。,createtablestudent(xhc(4),xmc(8),xbc(2),csrqd,sgn(3)usestudentliststructure,2定义视图,SQL语句基本格式如下:createsqlview视图名asselect语句其中,“视图名”指出定义的视图名。“select语句”是一个定义视图的Select查询语句,编程方式使用。注意:定义视图要求数据库已经被打开。,【例5.2】定义视图testview。,opendatabase学生成绩管理createsqlviewtestview选课表.分数;FROM学生成绩管理!课程表INNERJOIN学生成绩管理!选课表;INNERJOIN学生成绩管理!学生表;ON选课表.学号=学生表.学号;ON选课表.课程号=课程表.课程号;orderby分数desc,5.1.3SQL数据操纵功能,SQL数据操纵是指对表中记录的插入、更新或删除等操作。(1)插入命令:实现在一个表的末尾追加新记录,并给新记录的字段赋值。格式如下:insertinto(,)values(,)(2)更新命令:实现对所有记录或符合条件记录的字段值的更新。格式如下:updateset=,=where(3)删除命令:实现对表中所有记录或满足条件的记录进行逻辑删除操作。格式如下:deletefromwhere,【例5.5】在“学生信息表”中,添加一条编号为“88888888”记录,更新添加记录的字段值,删除添加的这条记录。,insertinto学生信息表(编号,姓名,性别)values(88888888,哈罗,男)browupdate学生信息表set出生日期=1980-10-3,是否党员=.t.;where编号=88888888browdeletefrom学生信息表where编号=88888888brow,5.2查询,查询(Query)是一种功能强大且相对独立,能够实现结果输出多样化的操作,它可以实现对数据库中数据的浏览、筛选、排序、检索、统计等功能。同视图相比,虽然视图能够实现数据更新而查询没有该项功能,但查询结果输出形式的多样化是视图所不及的。,5.2.1查询的创建,查询的创建可以直接使用SQL的Select的语句;也可以使用VFP提供的创建查询的功能实现,即使用“查询设计器”,查询的创建过程与视图创建类似。,“查询设计器”创建查询,命令格式:createquery,查询:分单表查询和多表查询。,5.2.2使用查询多样化输出,查询创建完毕,保存在.qpr的文件中,如何使用呢?可以使用VFP系统“文件”菜单,选择打开查询文件,再单击工具栏中间的红色感叹(!)按钮就可以运行,或在“查询”菜单中选择“运行查询”。除了菜单方式外,还可以使用命令方式来执行查询,命令格式如下:do查询文件主名.qpr其中,文件的类型名.qpr不能缺省。譬如:执行分数查询可以在命令窗口输入:do分数查询qpr,之后可以看到查询结果了。,查询去向设置,查询的实质,VFP的查询功能其实质也是SQL的查询语句,从“查询”菜单中选择“查看SQL”菜单项或单击工具栏的“SQL”按钮可以查看到上述查询设计的SQL语句:SELECT学生表.姓名,选课表.分数;FROM学生成绩管理!学生表INNERJOIN学生成绩管理!选课表;INNERJOIN学生成绩管理!课程表;ON课程表.课程号=选课表.课程号;ON学生表.学号=选课表.学号;WHERE选课表.课程号=01;INTOCURSORSYS(2015)&存入系统临时表DO(_GENGRAPH)WITHQUERY&图形输出形式,5.3报表,在使用数据库管理系统管理数据,经常遇到使用各种报表,报表汇集用户所需的重要信息并且按照特定的格式,因此常常被作为一种信息输出手段。在VFP中,报表具有数据源和布局两个基本组成部分,数据源是指数据库中的表、视图、查询或临时表,而布局是定义报表的输出格式。报表的设计通常使用“报表设计器”。,5.3.1报表设计器,命令格式如下:createreport报表文件名,报表的典型带区,工具栏,报表控件及其功能,5.3.2报表的设计,1.报表页面设置2数据环境设置3插入报表控件,1.报表页面设置,从“文件”菜单中选择“页面设置”命令,打开“页面设置”窗口,2数据环境设置,报表的数据环境确定了报表中数据的来源。在数据环境设计器中空白处右击鼠标,从出现的快捷菜单中选择“添加”命令,可以添加数据表或视图。可以将数据表或视图中的字段从“数据环境设计器”中拖动到报表的带区。,3插入报表控件,在报表中可以插入标签、域、图形或图片等控件,控件的插入操作比较简单,这里仅介绍插入域控件。单击报表控件工具栏中的域控件图标后,将鼠标指针移到报表设计中需要的位置上单击一下,就会打开“报表表达式”对话框,5.3.3报表的运行,设计好的报表可以通过“报表”菜单中的“运行报表”来运行,也可以单击红色的“!”按钮来运行。,在报表正式打印前最好选择“文件”菜单中“打印预览”命令或单击工具栏的预览图标()来预览一下设计效果。,使用命令来运行报表,命令格式如下:reportform|范围forNoConsoleplainrangenStartPage,nEndPagepreviewinwindowwindowname|inscreenNoWaittoprinterprompt|tofile文件名ASCII其中,NoConsole子句表示报表被打印或输出到一个文件时不显示在VFP主窗口中。Plain子句:表示只在报表开头出现页标头。Range子句:指定打印页的范围。Preview子句:表示在指定的窗口或屏幕中预览报表。Toprinter或Tofile:指定报表输出到打印机或文件。,【例5.6】利用“学生成绩管理”中的数据,设计一个报表文件fs_report,按分数降序。设置报表的数据分组为课程号,在组注脚中添加统计人数和课程平均分的表达式;页注脚添加日期,打印人的信息。,5.4标签,在日常生活、工作和学习中常常要用到标签(Label),譬如:公司年末需要向客户发送贺卡,利用存放在数据表中的客户联系方式创建标签,打印客户的通信标签贴到信封就比较简单了。由于标签的设计与报表的设计一样,下面只以一个例子来简单讲述一下标签的用法。,【例5.7】创建客户信封标签,客户的通信方式存放在数据表中(客户表.dbf)。客户表(编号c(4),客户单位c(36),联系人c(8),通信地址c(48),邮政编码c(6)。,标签操作的命令:(1)创建标签命令createlabe

温馨提示

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

评论

0/150

提交评论