第一篇:vf教案13-20
第13课时 创建查询
一、教学目的1、使学生掌握使用查询向导创建查询的方法。
2、理解查询和查找的区别
二、教学重难点 使用查询向导,查询和查找的区别
三、教学方法 举例 讲授 演示
四、教学过程 同学们,我们说VF中最最重要的功能就是它的查询功能了,在本节课中我们将重点来学习VF的查询,理解它的强大的功能。
说明:查找和查询的区别。
同学们,我们如果在一个表中要找到某个记录时,最简单的方法就是选择,编辑菜单下的查找了,它的使用方法和我们平时使用WORD是一样的,但是那是简单查找并不是查询,当我们要查找某些复杂的记录时,我们就要使用VF中的查询功能了。
我们这节课将学习使用查询向导来创建查询的方法。
举例:创建一个查询,在“学生管理”数据库中的“各科成绩”表中查询语文大于60并且数学大于70的学生信息,要求要显示的字段有,学号、姓名、语文、数学。分析:
使用查询向导可以快速创建查询,一般的操作步骤是:(1)选择在查询结果中要显示的字段
(2)设置查询条件来筛选在查询结果中包含的记录(3)设置排序来组织查询结果(4)选择结果输出记录的比例数
启动查询向导可以从“文件”菜单中单击“新建”命令,在“新建”对话框中选择“文件类型”中的“查询”,然后单击“向导”按钮,启动查询向导。
操作:(教师在使用教学系统进行演示,然后说明每一步操作的过程)以查询文件名为“查询1”保存,系统默认的扩展名为.qpr。提高
建立查询后,如果要运行该查询,在Visual FoxPro 6.0 窗口,选择“程序”菜单中的“运行”,从打开的“运行”窗口中选择要运行的查询,如“查询1.qpr”,显示查询运行结果。
另一种运行方法是使用命令方式,命令格式如下: DO 查询文件名.qpr 例如,在命令窗口键入: DO查询1.qpr 命令中的查询文件名必须给出扩展名.qpr。
说明:同学们,查询文件的扩展名是.qpr,这一点大家要牢牢掌握。
任务1:在各科成绩表中查询语文小于60并且数学也小于60的同学的信息,要求显示的字段有学号、姓名、语文、数学。
等学生完成后,提问一两个同学到大屏幕上进行操作,然后纠正他们出现的问题。任务2:在学籍信息登记表中,查询1982年1月1日以后出生的所有男生的信息,要求显示的字段有学号、姓名、性别、出生年月、是否党员、入学成绩,查询结果保存为查询3。
提示:日期时间型的数据应该是怎么表示的? 这个题目中共限制了几个查询条件。
同样,等学生完成后,提问一两个同学到大屏幕上进行操作,然后纠正他们出现的问题,在这里尤其要强调的是日期时间型数据的表示方法。1982年1月1日以后出生到底是大于这个日期还是小于,让学生自己试试,这样才能达到很好的效果。小结: 同学们,我们本节课主要讲授了使用查询向导来对数据表进行简单的查询,使用查询能让我们在庞大的数据海洋里面很轻松的找到我们需要的记录,能大大节约时间,提高效率,同学们下去一定要多多的练习。
第14课时 使用查询设计器创建查询
一、教学目的1、使学生掌握使用查询设计器创建查询的方法。
2、理解查询向导和使用查询设计器创建查询的方法。
二、教学重难点 使用查询设计器创建查询
三、教学方法 举例 讲授 演示
四、教学过程
同学们,利用查询设计器可以按照需要设计一个查询,如将满足条件的记录选择出来。而且还可以用它对一个已有的查询进行编辑和修改。下面用二个例子来说明如何创建满足条件的查询。
例6.7 创建一个名为“数学及格”的选择查询,将表“grade”中数学成绩高于等于60 分的记录选择出来,查询包括“学生编号”、“数学”、“英语”、“计算机”等字段,并按数学成绩从高到低排序。
使用查询设计器创建一个选择查询来解决以上问题,操作步骤如下:(1)在数据库窗口选中“查询”对象,单击“在设计视图中创建查询”选项,进入“选择查询”窗口,同时弹出“显示表”对话框。
(2)单击“表”选项卡,双击“grade”,把“grade”表选入查询设计器的表/查询显示区后,关闭“显示表”对话框。
(3)分别双击“学生编号”、“数学”、“英语”和“计算机”字段名,将它们添加到查询设计区的网格中,如下左图所示。
(4)将光标定位在“数学”的“准则”框内,输入“>=60”,再将光标定位在排序的框内,单击出现的下拉箭头,如上左图中箭头所示,在出现的下拉列表框中选择“降序”。
(5)单击右上角的关闭按钮,保存对查询设计的更改,在出现的“另存为”对话框中输入“数学及格”,然后单击“确定”。查询“数学及格”添加到数据库窗口中。(6)在“数学及格”查询上双击,显示查询结果集,如上右图所示。教师在大屏幕上演示操作方法,学生自己观摩。
总结:同学们,使用查询设计器设计查询要经过以下步骤:
1、打开查询设计器
2、选择想从中获取的信息的表或视图,并建立好它们之间的联系。
3、选择出现在查询结果中的字段。
4、设置筛选的条件,查找所需的记录。
5、设置排序,分组等选项,组织查询结果。
6、选择查询结果输出的方向,表,报表,或浏览等。(下节课介绍)
7、运行查询。
8、保存查询文件。
第15课时 复习查询设计器创建查询
一、教学目的1、使学生掌握使用查询设计器创建查询的方法。
2、理解查询向导和使用查询设计器创建查询的方法。
二、教学重难点 使用查询设计器创建查询
三、教学方法 举例 讲授 演示
四、教学过程
例6.8建立一个名为“成绩总分”的查询,包含 “学号”、“姓名”、“数学”、“英语”、“计算机” 字段,并新建一个总分字段。其中:总分=数学+英语+计算机,并将总分大于240的记录显示出来。操作步骤
(1)在数据库窗口选中“查询”对象,选择“在设计视图中创建查询”,进入“选择查询”窗口,同时弹出“显示表”对话框。
(2)单击“表”选项卡,由于数据来源于“grade”和“students”两个表,分别双击“grade”、“students”,然后关闭“显示表”对话框。由于在6.2.7节已在“grade”和“students”表间建立了关系,故在它们之间出现一对一的关系连线,如下图所示。
(3)分别双击“学号”、“姓名”、“数学”、“英语”和“计算机”字段名,把要求在查询中显示的“学号”等各个字段添加到查询设计区内,如上图所示。
(4)将光标定位到空白字段中,如上图中箭头所示。此时,工具栏上生成器按钮 变为可用,单击它,弹出表达式生成器对话框如下图所示。
(5)在上图的左下方的框内,双击“表”文件夹,选择出现的“grade”表,如上图所示,在中间的框中会显示出“grade”表的所有字段。
(5)双击“数学”,单击“+”,双击“英语”,单击“+”,双击“计算机”,则整个公式[grade]![数学] + [grade]![英语] + [grade]![计算机] 就显示出来,如上图上部框中间所示。
(7)单击“确定”按钮,可以看到表达式出现在字段框中,把“表达式1”这几个字改成“总分”(注意:冒号及冒号右边的内容不能改动),在下面的准则框中,输入“>240”,如下左图中箭头所示。
图6.4.3.4图6.4.3.5(8)单击窗口右上角的“关闭”,保存更改。在弹出的“另存为”对话框中,输入查询名“成绩总分”,单击“确定”。双击建好的查询“成绩总分”,查询结果如上右图所示。
学生先进行操作,不会的地方教师进行详细的讲解和大屏幕上演示。小结: 本节主要通过实例让同学们熟练的掌握查询设计器来设计查询的的过程,对查询设计器在数据库中的一些具体应用有了更深入的了解。
第16课时 设置查询的去向
一、教学目的
使学生能熟练掌握设置查询的去向的方法。
二、教学重难点 设置查询的去向
三、教学方法 举例 讲授 演示
四、教学过程 同学们,我们前面所使用的查询结果都是在表中显示出来的,但是如果我们要用其它方式来显示查询结果,这就是我们本节课需要学习的知识。
设置查询去向
当我们单击工具栏上的“查询去向”按钮,或从“查询”菜单中选择“查询去向”,或单击右键并在快捷菜单中选择“输出设置”都可以出现下面的“查询去向”对话框。
它有七个不同的选项,允许将查询结果传送给七个不同的输出设备。选择不同的按钮,其窗口中的选项也不一样。上图中是默认的“浏览”,即将查询结果送到“浏览”窗口中显示,以进行检查和编辑。
当单击“临时表”时,窗口如下:
以指定的名称把查询结果存贮于临时表中。此临时表只读,并在“数据工作期”窗口中出现。临时表可用于浏览,生成报表或其他目的。当关闭这个表时,查询结果随之消失。当单击“表”时,窗口如下:
用指定的文件名,将查询结果存为(.dbf)表文件。“表名”选项用来指定表的名称。既可以在文本框中键入名称,也可以使用三点按钮来选择一个已有的、要覆盖的表。
单击“图形”按钮,产生可由 Microsoft Graph处理的图形。在设置GENGRAPH之后才可用。
单击“屏幕”按钮,使查询结果在活动输出窗口中显示。通过选择“次级输出”中的单选按钮可以在把查询结果输出到屏幕的同时输出到打印机或文本文件。“选项”复选框可以设置是否输出列标头和是否在屏幕之间暂停。
单击“报表”按钮,将查询结果按某一报表布局显示。使用此选项必须先设置报表文件(.frx),来容纳查询中的输出字段。如下图:
在“打开报表”文本框中输入报表名,或单击“打开报表”按钮选择报表名,或者单击右侧的报表向导按钮进入报表向导,产生一个报表。“次级输出”同“屏幕”。
如果选择“页面预览”将在“页面预览”窗口中显示输出结果。
如果选择“活动控件台”将在活动输出窗口中显示输出结果。
如果选择“报告之前释放页”,将在报表开始之前打印一空白页,以在打印机上隔开文档
如果选择“仅总结信息”,将不打印细节信息。所生成的报表包括标头、注脚、总计信息等等,但不包括细节信息。
单击“标签”按钮,将会将查询结果输出到一个标签文件(.LBX)。使用此选项必须先设置标签文件,来容纳查询中的输出字段。其选项前面几个去向中已介绍。
第17课时 复习
一、教学目的
通过让学生做一些练习题来掌握有关查询的使用。
二、教学重难点 设置查询的去向
三、教学方法 举例 讲授 演示
四、教学过程 选择题
1.现实世界中事物在某一方面的特性在信息世界中称为()A.实体 B.实体值 C.属性 D.信息
2.数据的存储结构与数据逻辑结构之间的独立性称为数据的()A.结构独立性 B.物理独立性 C.逻辑独立性 D.分布独立性
3.应用程序设计的工作开始于数据库设计步骤的()A.需求分析阶段 B.概念设计阶段
C.逻辑设计阶段 D.物理设计阶段 4.在关系R中,代数表达式 σ3<4(R)表示()A.从R中选择值为3的分量小于第4个分量的元组组成的关系 B.从R中选择第3个分量值小于第4个分量的元组组成的关系
C.从R中选择第3个分量的值小于4的元组组成的关系
D.从R中选择所有元组组成的关系
5.对关系模式进行分解时,要使分解具有无损失连接性,在下属范式中最高可以达到()A.2NF B.3NF C.BCNF D.4NF 6.事务的ACID性质,是指事务具有原子性、一致性和()A.隔离性、透明性 B.独立性、透明性
C.隔离性、持久性 D.共享性、持久性
7.各个场地采用同一类型的数据模型,使用不同型号的DBMS,这种分布式数据库系统的类型属于()A.同构同质型 B.同构异质型 C.异构同质型 D.异构异质型 8.为解决“丢失更新”问题,事务在更新一个数据集合前,必须获得对它的()A.S锁 B.X锁 C.S锁和X锁 D.S锁或X锁
9.在删除基本表中某个元组时,将以此表为参照表的关系中外键与主键相同的元组一起删除,应采用的方式是()A.RESSTRDICT方式 B.CASCADE方式 C.SET NULL方式 D.CHECK方式
10.在SQL的查询语句中,对应关系代数中“投影”运算的语句是()A.SELECT B.FROM C.WHERE D.SET 11.在关系模式R(U,F)中,X,Y,Z是U中属性,则多值依赖的传递律是()A.如果X→→Y,Y→→Z,则X→→Z B.如果X→→Y,Y→→Z,则X→→YZ C.如果X→→Y,Y→→Z,则X→→YZ D.如果X→→Y,Y→→Z,则X→→Z-Y 12.在数据库设计中,将E-R图转换成关系数据模型的过程属于()A.需求分析阶段
B.逻辑设计阶段
C.概念设计阶段
D.物理设计阶段
13.关系代数的五个基本操作可直接转换成元组关系演算表达式,它们是:并、差、投影、选择和()
A.交
B.笛卡尔积
C.自然连接
D.除法 14.SQL语言具有的功能是()A.关系规范化,数据操纵,数据控制
B.数据定义,数据操纵,数据控制
C.数据定义,关系规范化,数据控制
D.数据定义,关系规范化,数据操纵
第18课时 多表查询(1)
一、教学目的
使学生掌握使用查询设计器对多表进行查询
二、教学重难点 多表查询
三、教学方法 举例 讲授 演示
四、教学过程 同学们,前面我们学习的查询都是基于一个表进行的,那么如果要在多个表之间进行查询的话,那就要使用多表查询,就是我们本节课需要学习的知识了。
我们通过一个例子来让同学们了解多表查询的方法。
为了以后举例的方便,我们再建立一个“图书订货库”,它包括图书表、订货表、客户表三个表。分别将图书表.书名、客户表.客户名称设置为主索引,将订货表.书名和客户名称设置为普通索引,并且在各表之间建立关联。如下图:
在图书表中输入数据(所有数据为随意设置,不做实际参考),如下图:
在订货表中输入数据,如下图:
在客户表中输入内容,如下图:
我们建立这个多表查询的目的是查询“客户名称”为新华书店的订货信息。
我们看到,图书订货数据库中图书表和客户表是多对多关系,即一种书可由多个客户订购,一个客户可订购多种书。而图书表和订货表、客户表和订货表都是一对多关系。
小结:本节主要是让同学们先建立我们需要的数据表,为下一节课的多表查询建立基础。
第19课时 多表查询(2)
一、教学目的
使学生掌握使用查询设计器对多表进行查询
二、教学重难点 多表查询
三、教学方法 举例 讲授 演示
四、教学过程 同学们,上一节课我们建立了几个表,这节课我们就用这几个表来建立一个多表查询。接上节课的内容。我们打开“文件”菜单,单击“新建”,选择“查询”并单击“新件文件”按钮,进入查询设计器。在“添加表或视图”窗口中依次将“图书订货库”的图书表、订货表和客户表加入到表设计器。如下图:
由于我们在“图书订货库”中建立了表间永久关系,因此在添加的表之间自动产生关联。
注意:如果我们添加了图书表后接着添加客户表,由于我们在数据库中未建立两表的直接关联,便会弹出一个“联接条件”对话框,要求加入联接条件,我们不需要这两表建立直接关联,按“取消”按钮即可。如下图:
我们需要了解的项目有客户名称、订购的书名、每本书的定价、订货数量、每种书的预付款总额、客户联系电话,联系人等。因此我们在“字段”选项卡中选择加入相应的字段。
其中的每种书预付款总额没有与之相应的字段,需要在“函数和表达式”文本框中建立。单击文本框右侧的三点按钮,进入“表达式设计器”,通过选择或输入,在“表达式”框中建立表达式“图书表.定价*订货表.订货数量*0.75",其中的0.75指当一次性交清款,将按75折给予优惠。如下图:
按“确定”按钮关闭表达式生成器。这时在查询设计器中的“表达式和函数”文本框中出现刚才建立的表达式,按“添加”按钮,将表达式加入“选定字段”,并用垂直双向箭头调整字段输出的顺序。如下图:
小结:我们本节课主要向同学们介绍了多表查询的一部分操作,同学们一定要掌握多表查询之间几个表的关系,要区分开什么是内部连接、左连接、右连接和完全连接的区别。
第20课时 多表查询(3)
一、教学目的
使学生掌握使用查询设计器对多表进行查询
二、教学重难点 多表查询
三、教学方法 举例 讲授 演示
四、教学过程 在“联接”选项卡中我们取默认的内部联接。由于要查询的是各表之间的匹配记录,因此在为各表间的联接都要为内部联接。如下图:
在“筛选”选项卡中设置筛选条件。一种条件可以有几种表示方法,如何设置根据个人习惯。筛选条件和上面的联接条件类似,两者都是先比较值,然后输出满足条件的记录。不同的是两者比较的对象,联接条件是将一个表的字段值与另一个表的字段值相比较,而筛选条件则是字段值与筛选值(实例文本)相比较。这里我们选择、输入:订货表.客户名称=新华书店 我们希望按照预付款数额由小到大排列,因此我们从“选定字段”中将表达式添加到“排序条件”框中。如下图:
我们不需要分组,“分组依据”选项卡不设置。“杂项”取默认值。这样,基于“图书订货库”的一个查询就完成了。
单击鼠标右键,在快捷菜单中选取“运行查询”,就会在默认的“浏览”窗口中看到我们查询的结果,如下图:
和输出到“浏览”窗口类似,如果我们选择“屏幕”则会将查询结果显示在屏幕上。
如果我们在“查询去向”中选择“表”,并在其文本框中输入“ls”,则当我们运行查询后,查询结果就送到ls.dbf表中,用来进行各种操作。从“打开”窗口就可看到出现了 ls.dbf 的表名。如下图:
和选择“表”类似,如果选择“报表”或“标签”,会将这次查询的结果送到指定的报表和标签中去。
小结:同学们,我们利用了三节课来学习多表查询的使用方法,这在我们以后的学习中经常能用到,同学们下去要多加练习。
第二篇:VF基础教案
第2章Visual FoxPro 6.0概述
2.1 Visual FoxPro的安装、启动与关闭 2.1.1 Visual FoxPro 6.0 的安装
中文Visual FoxPro 可以从CD-ROM或网络上安装。以下介绍三种从CD-ROM上安装Visual FoxPro 的方法。
1.直接启动CD-ROM
2.直接运行安装程序
3.使用Windows 安装 2.1.2 Visual FoxPro 6.0的启动与关闭
一、Visual FoxPro 6.0的启动
启动Visual FoxPro有多种方法,可采用以下三种方式之一。
1.从“开始”菜单启动
2.从“运行”对话框中启动
3.从资源管理器中启动
4.双击Visual Foxpro6.0快捷图标
二、Visual FoxPro 6.0的退出
(1)在Microsoft Visual FoxPro主菜单中,打开“文件”菜单,选择“退出”选项;
(2)按Alt+F4组合键;
(3)按Ctrl+Alt+Del组合键,进入“关闭程序”窗口,按“结束任务”按钮;
(4)在Microsoft Visual FoxPro的系统环境窗口,单击其右上角的“退出”按钮;
(5)在“命令”窗口,输入命令Quit。2.2 Visual FoxPro 6.0系统运行环境的配置
Visual FoxPro系统环境的配置,决定了Visual FoxPro系统的操作环境和工作方式。
单击“工具”-> “选项”可以打开选项选窗口,在“选项”窗口中,有12种不同类别的环境选项卡,用户可以根据操作的需要通过“选项”窗口中的各种选项卡,确定或修改设置每一个参数,从而确定Visual FoxPro的系统环境.2.2.1 设置默认工作目录
VF有其默认的工作目录,就是系统文件所在的VF6.0目录,但是,为了管理,用户最好还是设置自己的工作目录以保存所建的文件 设置默认路径的方法: “工具”->“选项”->文件位置 使用命令设置:
SET DEFA TO <默认路径> 功能:设置默认路径 例:
SET DEFA TO D:WMQ SET DEFA TO E:200723 2.2.2 设置日期的表示格式 设置日期时间格式: “工具”->“选项”->“区域”
2.3 Visual FoxPro 6.0的系统窗口
Visual FoxPro的界面
Visual FoxPro界面,是由标题栏、菜单栏、工具栏、工作区、状态栏和命令窗口组成的。
一、标题栏
标题栏位于屏幕界面的第一行,它包含系统程序图标、主屏幕标题、最小化按钮、最大化按钮和关闭按钮5个对象。
二、菜单栏
菜单栏位于屏幕的第二行,它包含文件、编辑、显示、格式、工具、程序、窗口和帮助8个菜单选项。
当单击其中一个菜单选项时,就可以打开一个对应的“下拉式”菜单,在该“下拉式”菜单下,通常还有若干个子菜单选项,当选择其中一个子菜单选项时,就可以执行一个操作。
三、工具栏
Visual FoxPro系统提供了11种常用的工具栏:
(1)常用工具栏(2)布局工具栏
(3)表单控件工具栏(4)表单设计器工具栏
(5)查询设计器工具栏(6)视图设计器工具栏
(7)数据库设计器工具栏(8)报表控件工具栏
(9)报表设计器工具栏(10)调色板工具栏
(11)打印预览工具栏
四、命令窗口
命令窗口位于菜单栏和状态栏之间,是Visual FoxPro系统命令执行、编辑的窗口。在命令窗口中,可以输入命令实现对数据库的操作管理;也可以用各种编辑工具对操作命令进行修改、插入、删除、剪切、拷贝、粘贴等操作;还可以在此窗口建立命令文件并运行命令文件。
在“窗口”菜单下,选择“隐藏”,可以关闭命令窗口;选择“命令窗口”,可以弹出命令窗口。
五、工作区与状态行
状态行位于屏幕的最底部,用于显示某一时刻的管理数据的工作状态。(1)Set Status off/ on,可控制屏幕上的状态行是否出现。
(2)如果当前工作区中没有表文件打开,状态行的内容是空白;如果当前工作区中有表文件打开,状态行显示表名、表所在的数据库名、表中当前记录的记录号、表中的记录总数、表中的当前记录的共享状态等内容。
2.4 可视化管理工具
1、设计器
通过设计器可以方便地对表、表单、数据库、查询和报表等进行管理。
2、向导
通过用户对问题的回答或对选项的选择,向导将创建相应的文件或执行某一项任务。
3、生成器 是一种可视化的辅助工具,用来帮助拥护按要求设计各种控件的表现形式。2.5 Visual Foxpro 6.0的工作方式 Visual FoxPro 6.0提供了两种工作方式:
交互方式(可执行方式和可视化操作方式)程序方式
2.5.1 交互方式
包括命令执行方式和可视化操作方式。
1、命令执行方式
Visual FoxPro 6.0提供命令方式主要有两种目的,一是对数据库的操作使用命令比使用菜单或工具栏要快捷而灵活;另一方面,熟悉命令操作是程序开发的基础。
Visual FoxPro 6.0提供了命令窗口用于输入执行命令。
Visual FoxPro 6.0中的命令采用近似于自然语言的结构。
Visual FoxPro 6.0中的命令不区分大小写,即命令可以用大写字母也可以用小写字母书写。另外,对于较长的命令可以只输入命令的前四个字母。
Foxpro提供了多条命令,命令中常出现的一些符号有:(P19)
<....> 必选项
[....]
可选项
...|... 择一选项 这些符号在实际使用时不必输入. 命令的一般格式为:
命令动词 [<范围>][fields<字段名表>][for <条件>] 其中:
命令动词:决定此命令的功能,一般为英文动词. 范围:表示记录的操作范围,有]四种形式:
ALL 表示对数据库中的所有记录进行操作。•
RECORD N
表示仅对第N条记录进行操作 •
NEXT N 表示从当前记录开始共N个记录
REST
表示从当前记录开始到文件结束的所有记录
Fileds:说明数据库的字段名称,不选此项,则表示选择所有字段 命令书写规则 任何命令必须以命令动词开头, 大小写不限,其后的各项顺序不限。各子句之间用空格分隔。
命令可缩写成前4个字母,但不提倡
一行写不下时,在行末用续行符“;”,并在下行继续书写 一行只能写一条命令语句
例如,显示xsda数据表中所有不住校的女生的姓名、年龄
use xsda
list all fields 姓名,年龄
for 住校否=.F.and 性别=’女’
2、可视化操作方式
可视化操作方式包括:菜单方式、设计器方式、向导方式。
在VisualFoxpro系统中,通过菜单、窗口、对话框、工具栏等图形界面,可以直接操作数据表、视图、查询、表单、报表等,并以窗口的方式把结果显示给用户。
2.5.2 程序执行方式
Visual FoxPro 6.0提供了一个程序编辑器,可以使用MODIFY COMMAND 命令打开程序编辑器,或者从“文件”菜单中选择“新建”命令,在弹出的“新建”对话框中选择“程序”单选项,最后单击“新建文件”按钮即可打开程序编辑器。
2.6 Visual Foxpro 6.0的主要性能指标 主要性能指标有:
1、每个数据库最多记录数为10亿个
2、每条记录可包含的字段个数最多为225个
3、每条记录最多字符数为655000个字节
4、字段型字段最大宽度(即最多可容纳的字符数)为254个字节。
5、数值型字段最大宽度为20位,精度为16位
6、有32767个工作区,可同时打开的数据库文件最多32767个。
7、可使用的内存变量默认总数位256个,最多为65000个。最大数组个数为65000个,每个数组的最多的元素数为65000个。
第三篇:VF教案31-40
第31课时 使用向导创建视图
一、教学目的 使学生通过本节的学习,使学生能利用创建一个视图。
二、教学重难点 使用向导创建视图和查询的区别
三、教学方法 举例 讲授 演示
四、教学过程
同学们,在使用视图向导创建视图时,向导会自动列出创建视图的步骤,用户根据向导提供的提示完成相应的操作,即可正确的建立视图。
下面我来介绍一下创建视图的几个步骤:
(1)字段选取。选择数据库,数据库中的表和表中的字段。如果当前已经打开了一个数据库,则第一步的对话框中显示的是创建当前数据库的视图,也可以选择其它的数据库。
(2)关联表。建立数据库中表与表之间的关系。
(3)包含记录。指定包含表中的全部记录还是仅匹配的记录。(4)筛选记录。选定符合条件的记录。
(5)排序记录。为选定的记录按照某一字段进行排序。
(6)限定记录。定制显示一定数量的记录。(7)完成视图。选择保存视图后浏览还是修改。
例:创建包含Grade表和Courses表的本地视图“视图1”。
字段选择完成后,单击【下一步】,步骤2——为表建立关系。说明:在这一步要建立用来建立本地视图的表间的关系。
1、先在父表字段选择下拉选择框中选择要用来建立关系的主关键字;
2、再在子表字段选择下拉选择框中选择用来建立关系的子表关键字;
3、单击【添加】,将设定关系添加到关系列表框中。
关系设置完成后单击【下一步】进入到步骤2a——字段选取对话框。
本例中选用默认值:仅包含匹配的行。然后单击【下一步】,进入步骤3——筛选记录。说明:
仅包含匹配的行:生成的本地视图中只包含表中关系相匹配的记录,对应于关系中的内联接的设置结果。
此表中所有的行:生成的本地视图中包含Grade表中的全部记录和子表中关键字段相匹配的记录,对应于关系中的左联接的设置结果。
两张表中所有的行:生成的本地视图中包含表中所有的记录,对应于关系中的完全联接的设置结果。小结:
第32课时
使用向导创建视图(2)
一、教学目的 使学生通过本节的学习,使学生能利用创建一个视图。
二、教学重难点 使用向导创建视图和查询的区别
三、教学方法 举例 讲授 演示
四、教学过程
本地视图向导:步骤3——筛选记录
说明:本地视图向导的筛选记录与查询向导的筛选记录的方式类似。在本例中不筛选记录。
单击【下一步】,进入到本地视图向导的步骤4——排序记录。本地视图向导:步骤4——排序记录
说明:在这一步中设置在本地视图的记录顺序。
本例中可先按“学号”排序,学号相同的再按“课程代号”排序。
操作方法与建立查询的记录排序方法相同。先在“可用字段”列表框中选择“学号”,然后单击【添加】,再选择“课程代号”,再单击【添加】如上图。排序字段及顺序设置后单击【下一步】,进入本地视图向导:步骤4a——限制记录。本地视图向导:步骤4a——限制记录
限制记录的方法与建立查询的限制记录的方法完全相同。在本例中仍保持在本地视图中包含所有的记录,因而取默认值,直接单击【下一步】,进入本地视图向导:步骤5——完成。
在第5步中的操作方法也与建立查询的方法相同,现选择“保存本地视图并浏览”,然后单击【完成】。弹出“视图名”对话框
在“视图名”文本框中输入“视图1”
输入视图名后单击【确认】按钮,系统显示所建立的本地视图的结果。本地视图向导结束。
小结:我们利用了两节课的时间来学习了使用视图向导来创建视图的方法,创建视图的方法其实和创建查询的方法是基本相同的,同学们下去要多加把握一下。
第33课时
利用视图设计器创建本地视图
一、教学目的 使学生通过本节的学习,使学生能利用创建一个视图。
二、教学重难点 使用向导创建视图和查询的区别
三、教学方法 举例 讲授 演示
四、教学过程 前面我们学习了使用视图向导来创建一个视图,和查询时一样的,视图也可以利用视图设计器来创建一个视图,通过本地视图向导建立数据库视图虽然方便,快捷,但这仅对入门者如此,何况用视图向导建立数据库视图最终还要依赖视图设计器。因此,倾向独立进行开发的程序员来说,仅仅学会使用向导是远远不够的,还应学会使用视图设计器的强大功能来创建视图。(1)进入视图设计器
进入视图设计器的方法与进入查询设计器的方法基本相同,下面以新建视图的方式进入视图设计器。启动视图设计器方法
新建一个视图可按以下步骤进入视图设计器:
■选择【文件】|【新建】命令,单击“视图”单选框,再单击【新建文件】按钮。
■在数据库设计器中,选择【数据库】|【新建本地视图】或单击数据库设计器的快捷菜单中的【新建本地视图】|【新视图】按钮。
■在项目管理器中,单击“数据”选项卡,在列表框中选定“本地视图”,再单击【新建】按钮,单击【新建视图】按钮。修改一个视图可按以下步骤进入视图设计器:
■在数据库设计器窗口中,单击选定需要修改的视图,选择【数据库】|【修改】命令。
■在数据库设计器窗口中,右击需要修改的视图,在出现的快捷菜单中选择【修改】命令。■在项目管理器中,单击【数据】选项卡,在列表框中选定需要修改的视图,单击【修改】按钮。
“视图设计器”工具栏说明
添加移去添加联显示SQL窗口 最大化上部窗
添加表:显示“添加表或视图”对话框,从而可以向设计器窗口添加一个表或视图
移去表:从设计器窗口的上窗格中移去选定的表。添加联接:在视图中的两个表之间创建联接条件
显示/隐藏SQL窗口:显示或隐藏建立当前视图的SQL语句 最大化/最小化上部窗口:放大或缩小视图设计器的上窗格(2)从表中选择所需字段
在进行本地视图设计器之前,先建立Classzc表和Department表,表结构和数据如下:
小结:我们利用本节课讲授了使用视图设计器创建本地视图的一部分内容,剩下的内容我们将在下一节课中继续向大家讲授。
第34课时
利用视图设计器创建本地视图(2)
一、教学目的 使学生通过本节的学习,使学生能利用创建一个视图。
二、教学重难点 使用向导创建视图和查询的区别
三、教学方法 举例 讲授 演示
四、教学过程
从中选定表Classzc并单击【添加】按钮,然后单击【关闭】按钮,启动视图设计器。
进入视图设计器后,第一步先需要选定字段,选定字段可直接通过字段选项卡进行。其操作方法与查询设计器中选择字段的方法相同。
从“可用字段”列表框里选定Classzc.班级简称字段,单击【添加】按钮或双击该字段,则Classzc.班级简称字段将会出现在右边的“选定字段”列表框中。本次建立的视图里,还需要选定Classzc.学习性质、Classzc.学制二个字段。它们选定的方法与选定Classzc.班级简称字段一样。如果需选定字段是“可用字段”列表框中的所有字段,可以单击【全部添加】按钮,这样就把所有字段添加到了“选定字段”列表框中去了,可以通过【移去】按钮将其移出来。如果需要全部移出,可以利用【全部移去】按钮快速移出。
要将表中的字段添加到“选定字段”列表框中,除了上述方法外,还可以将鼠标指向视图设计器上部窗口中的表窗口中的字段上,按住鼠标左键或右键拖动一个字段到“选定字段”列表框,该字段就被加入到了“选定字段”列表框中。还可以通过双击字段名将其加入到“选定字段”列表框。表窗口中的*代表表中的全部字段,它也是可以拖动或双击的。若要从“选定字段”列表框中移去字段,也可以使用鼠标拖动或双击。“字段”选项卡还有一个【属性】按钮和一个“函数和表达式”文本框。只要“选定字段”列表框中有一个值,【属性】命令按钮就成为可选的了。选择【属性】后,(3)建立多表关联
前面主要是针对单一的本地表建立视图,虽然很容易,但它的实际功能不大。因为在实际开发中,系统的数据库很复杂,表的关联性很强,用户关心的往往是一些复杂的数据,因此需要建立多表视图。
(4)与设计多表查询不相同的部分——更新条件
视图的最大特点在于能用视图更新数据,这也是建立视图与建立查询的主要区别,也是视图的重点所在。视图设计器中的“更新条件”选项卡可以用来设置允许视图更新表字段的条件。
“更新条件”选项卡选项包括如下内容:
■“表”:指定视图所使用的哪些表可以修改。选择这个下拉列表框中的选项,可以确定哪些表中的字段可以在“字段名”列表框中,以便设置更新条件。此列表中所显示的表都包含了“字段”选项卡“选定字段”列表中的字段。■【重置关键字】:这个按钮作用是从每个表中选择主关键字字段作为视图的关键字字段。每个主关键字字段是在“字段名”列表中的、在钥匙符号下面打一个对钩的字段,关键字字段可
小结:我们利用两节课的时间向同学们介绍了有关使用视图设计器来创建视图的方法。同学们下去一定要好好的把握。
第35课时
使用视图
一、教学目的 使学生通过本节的学习,使学生能学会在VF中使用视图。
二、教学重难点 使用视图
三、教学方法 举例 讲授 演示
四、教学过程
同学们,建立视图后,不但可以用它来显示和更新数据,而且还可以通过调整它的属性来提高性能。处理视图类似处理表,可以: ■使用USE命令并指定视图名来打开一个视图。■使用USE命令关闭视图。■在【浏览】窗口中显示视图。
■在【查看】窗口中显示已打开的视图的别名。■将视图作为数据源,供表单或表格控件使用。若要使用一个视图,可采取如下方法:
■在项目管理器中先选择一个数据库,再选择视图名,然后单击【浏览】按钮,在【浏览】窗口中显示视图。■使用编程的方式访问视图。
下面的代码在【浏览】窗口中显示存放在c:gxglxt目录下gxglxt数据库中的视图1:
open database c:gxglxtgxglxt use 视图1 browse
在使用一个视图时,视图将作为临时表在自己的工作区打开。如果此视图基于本地表,则VFP6会在另一个工作区同时打开基表。如果没有打开任何表,或先执行Close All命令后再执行以上命令,则视图1在工作区1打开,而其基表则在工作区2打开。要查看基表,可以通过选择系统菜单上的【窗口】|【数据工作期】打开“数据工作期”窗口。但有一个例外,如果视图是基于远程表,则基表将不在工作区中打开。而只在【查看】窗口中显示远程视图的名称。
小结:本节主要介绍了又关打开和关闭视图的方法。
第36课时
视图的编辑
一、教学目的 使学生通过本节的学习,使学生能对视图进行编辑,及修改删除等操作。
二、教学重难点 视图的修改
三、教学方法 举例 讲授 演示
四、教学过程
同学们,有时用户只想了解视图的结构,而不关心视图中的数据。这样可以使用带NODATA子句的USE命令来快速显示视图的结构。例如: open database c:gxglxtgxglxt use 视图1 nodata in 0 Select 视图1 browse 通过运行上面的命令语句,将在【浏览】窗口中看到没有记录的视图1。因为使用NODATA子句时,VFP6为视图1创建一个永远返回.F.值的WHERE子句,而数据源上没有记录匹配WHERE子句的条件,所以没有记录被选择。
重新命名视图
建立一个视图以后,还可以为其重新命名视图,进行视图的重新命名,可以使用项目管理器或用RENAME VIEW命令。
■在项目管理器中先选择一数据库,再右击要重新命名的视图。单击【重命名】按钮,出现一对话框后即可为视图输入新的名称。
■使用RENAME VIEW命令。
例如,下面的代码将视图2重新命名为视图1: rename view 视图1 to 视图2 说明:在重新命名视图之前,必须打开包含要命名视图的数据库。
删除视图
视图同表一样也是可以删除的,删除视图可以使用项目管理器或使用DELETE VIEW命令。■在项目管理器中选择一个数据库,再选择要删除的视图,然后用鼠标右击,单击【移去】按钮,即可删除所选的视图。
使用DELETE VIEW命令。
例如,如果要删除数据库xsglxt中的视图2,可以键入以下的命令语句: delete view视图2 说明:在删除视图之前,必须打开包含要删除视图的数据库并设置其为当前数据库。
创建视图索引
同为表建立索引一样,也可以为视图建立索引。但与表不同的是,在视图上创建的本地索引不能永久保存,它们随着视图的关闭而消失。为视图建立本地索引,可以使用INDEX ON命令。关于该命令的参数,在创建表的索引时已有介绍。另有一点需要注意的是,在决定是否在视图上建立索引时,要考虑视图结果集合的大小。对于一个大的结果集合来说,索引要花费很长的时间,并可能降低视图的性能。因此,要根据实际情况处理。
小结:本节课主要介绍了有关视图的编辑,如修改视图结构,删除视图,重命名视图的方法等,同学们一定要好好的把握。
第37课时
创建参数化视图
一、教学目的 使学生通过本节的学习,使学生能熟练的创建一个参数化视图。
二、教学重难点 创建参数化视图
三、教学方法 举例 讲授 演示
四、教学过程 VFP可以创建具有提示输入值来查询信息的视图,称为参数化视图,这样的视图具有更大的灵活性和更强的适应性。可避免每取一部分记录值就要建立视图的情况。
可用以下方法创建参数化视图:
(1)打开视图设计器,从【查询】菜单中选择【视图参数】命令,此时系统弹出视图参数对话框,如图所示:
2)在视图参数对话框中输入参数名及其数据类型。此例中建立一个名为“系部代号”的视图参数,此视图参数可以任意取,但数据类型要和所要查询的记录类型一致。参数名可以是字母字符、数字和单引号的任意组合。(3)按下确定按钮,就为此视图建立了一个视图参数了。下面设计一个带参数的视图(视图4):
(1)打开“视图设计器”,选定表Classzc、Student、Course和Grade四个表,并选取.Classzc.系部代号、Classzc.班级名称、Student.学号、Student.姓名、Course.课程名、Grade.开课学期、Grade.课程成绩这7个字段名作为输出字段。(2)在“筛选”选项卡中的“字段名”下拉列表框中选择Classzc.系部代号,在“条件”列表框中选定“=”,在“实例”文本框中输入“?系部代号”。这个问号表示引用一个表达式所需要的参数。问号后的文字标识了这个参数的名称。同时还可以设定如“Grade.开课学期=‘?开课学期’”。(3)选择【查询】|【视图参数】,进入“视图参数”对话框,在“参数名”文本框中输入参数名称“系部代号”,在“类型”下拉列表框中选定参数的类型为“字符型”,同样还输入“开课学期”、“字符型”,然后单击【确定】按钮。
(4)通过选择【查询】|【运行查询】命令,或通过单击鼠标右键再选择【运行查询】命令,系统弹出如图所示的视图参数对话框。
在此对话框中可以输入将要查询的参数的某一具体数值,在此输入“05”;在后面弹出的“输入一个字符型值,供‘开课学期’使用”对话框中输入“第1学期”。
单击确定按钮,查询的结果即显示在屏幕上。
说明:教师在大屏幕上演示具体的操作过程,学生仔细观察,然后自己在电脑上进行实践。
第38课时
利用视图更新数据
一、教学目的 使学生通过本节的学习,使学生能熟练的利用视图来更新数据。
二、教学重难点 更新数据的方法。
三、教学方法 举例 讲授 演示
四、教学过程 同学们,我们说过,视图和查询最大的区别就是,查询不能对数据进行更新,而视图是可以的,我们这节课就学习如何对视图中的数据进行更新。
在项目管理器中选择“视图3”,单击【修改】,在视图设计器中选择“字段”选项卡,如图。
在上图中,请注意Grade表中的字段。选择“更新条件”选项卡,进行如图设置:
■设定关键字段和可修改字段。
注意:因为表Grade中每个字段的值都不唯一,所以要用组合关键字(学号+课程代号+开课学期)
■存档并显示结果。选【文件】|【保存】或从工具栏中单击保存按钮保存此视图。选取菜单【查询】|【运行查询】查看结果,为视图参数输入“04”(带定界符)、“第1学期”后的运行结果如图 :
■修改视图数据。既然我们已经为视图3视图文件设定关键字段与可更新字段,也就是设定了视图文件中哪些字段可以经过修改而自动更正原始数据文件内容,现在就来验证这些设定是否生效。
将视图中最后一条记录的“课程成绩”由62改为99。
更改完毕后操作光标离开这条记录,观察Grade表中相关记录变化的情形。
从结果可以看出:Grade表中的学号和课程成绩已随着视图文件的更改而自动修正了。表示我们设定的可更新字段生效。
说明:教师在大屏幕上边操作边演示,让学生仔细观察。任务1:在学生登记表视图中,把李飞的姓名改为李雄飞。任务2:在各科成绩表视图中,把张三的语文成绩由65改为99.小结:我们本节课主要介绍了有关视图的更新数据的方法,从视图更新数据这在VF中是非常重要的一个内容,同学们一定要仔细体会其中的奥妙。
第四篇:VF数据库程序设计教案
Visual Foxpro数据库程序设计教案
姓名:
李运娣
系别:
计算机
第1章 Visual FoxPro 数据库基础
本章重点与学习目标:
了解数据库系统的相关概念
数据、数据库、数据库管理系统、数据库系统 数据库管理系统发展过程
概念模型以及常用的数据模型—层次模型、网状模型、关系模型
掌握关系数据库
关系模型的相关属于
数据库设计基础
数据库设计的步骤和过程
了解VF系统的发展过程
数据库管理系统的发展
VF的发展简史及了解Visual FoxPro系统的特点 掌握VF系统的启动与退出方法 熟悉VF系统的用户界面
熟悉VF项目管理器
创建新项目
项目管理器窗口的各类选项卡
教学器材:
多媒体教学
本章课时: 3学时
§1.1 数据库基础知识
§1.1.1 计算机数据管理的发展
1.数据与数据处理 数据是指存储在某一种媒体上能够识别的物理符号;数据处理是指将数据转换成信息的过程。2.计算机数据管理
数据管理:是指对数据的组织、分类、编码、存储、检索、维护等,它是数据处理的中心问题。
数据管理技术的发展过程:人工管理阶段(40年代中--50年代中);文件系统阶段(50年代末--60年代中);数据库系统阶段(60年代末--现在)。
§1.1.2 数据库系统
1.数据库有关概念
数据库(DataBase):指数据库系统中以一定的方式将相关数据组织在一起,存储在外存储设备上形成的、为多个用户共享、与应用程序相互独立的相关数据集合。
数据库管理系统(DBMS): 用于建立、使用和维护数据库的系统软件。数据库管理系统对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。
数据库应用系统:数据库应用系统简称数据库系统,是指系统开发人员利用数据库系统资源开发出来的,面向某一类实际应用的应用软件系统。
数据库管理员(DBA):负责全面管理和实施数据库控制和维护的技术人员。
2.数据库系统的特点
数据库系统是指引进数据库技术后的计算机系统,实现有组织地、动态地存储大量相关数据,提供数据处理和信息资源共享的便利手段。特点:实现数据共享,减少数据冗余;采用特定的数据模型;具有较高的数据独立性;有统一的数据控制功能
§1.1.3 数据模型
1.实体的描述:实体的定义、属性、实体集和实体型 2.实体间联系及联系的类型
定义:实体之间相对应的关系称为联系,它反映了现实世界事物之间的相互关联。
类型:一对一联系;一对多联系;多对多联系 3.数据模型简介
数据模型是在数据库领域中定义数据及其操作的一种抽象表示。类型:网状模型;层次数据模型;关系模型
§1.2 关系数据库 §1.2.1 关系模型
1.关系定义的定义及相关术语
一个关系就是一张二维表,通常将一个没有重复行、重复列的二维表看成一个关系,每个关系都有一个关系名。
相关术语:元组、属性、域、关键字、外部关键字 2.关系的特点
关系必须规范化
二维表中的每一列都有唯一的字段名且取值性质相同 二维表中不允许出现完全相同的两行
二维表中可以任意交换行的顺序和列的顺序 3.实际关系模型
一个具体的关系是由若干个关系模式组成。在VF中,一个数据库中包含相互之间存在联系的多个表。这个数据库文件就代表一个实际的关系模型。为了反映出各个表所表示的实际实体之间的联系,公共字段名往往起着“桥梁”的作用。
例1.1 部门-职工-工资关系模型 例1.2 图书-读者-借阅关系模型
§1.2.2 关系运算
1.传统的集合运算:交、并、差 2.专门的关系运算
选择定义:从一个关系模式中找出满足给定条件的记录的操作称为选择,选择是从行的角度进行的运算,相当于对关系进行水平分解。
投影定义:投影运算从关系中选取若干属性形成一个新的关系。连接定义:将两个关系模式的若干属性拼接成一个新的关系模式的操作,对应的新关系中,包含满足连接条件的所有元组。§1.3 数据库设计基础 §1.3.1数据库设计步骤
1.设计原则
概念单一化”一事一地”原则 避免在表之间出现重复字段
表中的字段必须是原始数据和基本数据元素 用外部关键字保证有关联的表之间的联系 2.设计步骤
需求分析
确定需要的表 确定所需字段 确定联系 设计求精
§1.3.2 数据库设计过程
1.需求分析:用户需求主要包括信息需求、处理需求、安全性和完整性要求。
2.确定需要的表:数据库设计过程中最主要的一步就是确定需要的表,分析的过程实际上就是对收集到的数据进行抽象的过程。3.确定所需字段 4.确定联系 5.设计求精
§1.4 Visual FoxPro系统概述
Visual FoxPro6.0是微软公司1998年发布的可视化编程语言集成包Visual Studio6.0中的一员,是一种用于数据库结构设计和应用程序开发的功能强大的面向对象的计算机数据库软件。
§1.4.1 Visual FoxPro 6.0的安装与启动
1.安装步骤
将Visual FoxPro 6.0系统光盘插入CD-ROM驱动器,打开光盘,找到setup.exe文件,双击该文件,进行安装向导。按照安装向导的提示,单击“下一步”按钮根据提示进行安装。2.启动系统
单击Windows的“开始”按钮,选择“程序”“Microsoft Visual FoxPro 6.0”“Microsoft Visual FoxPro 6.0”菜单项。§1.4.2 Visual FoxPro 6.0的主界面
1.菜单操作
下拉式菜单项:
主菜单栏中包括8个下拉式菜单项:文件(F)、编辑(E)、显示(V)、工具(T)、程序(P)、项目(Q)、窗口(W)、帮助(H)。2.命令操作
显示与隐藏命令窗口的方法:
单击命令窗口右上角的关闭按钮可以关闭它,然后通过“窗口”菜单下的“命令窗口”选项可以重新打开。3.项目管理器窗口
项目管理器是VF中各种数据和对象的主要组织工具。一个项目是文件、数据、文档和对象的集合。§1.4.3 工具栏的使用
1.显示或隐藏工具栏 2.定制工具栏
3.修改现有工具栏
§1.4.4 Visual FoxPro 6.0的配置
为了使系统满足个性化的要求,可以定制自己的系统环境。在VF中可以使用“选项”对话框或SET命令进行附加的配置设定,这里主要用“工具”菜单下的“选项”进行设定。§1.5 项目管理器
项目是指文件、数据、文档和对象的集合。“项目管理器”是VF中处理数据和对象的主要组织工具,它为系统开发者提供了极为便利的工作平台,一是提供了简便的、可视化的方法来组织和处理表、数据库、表单、报表、查询和其他一切文件;二是在项目管理器中可以将应用系统编译成一个扩展名为.app的应用文件或.exe的可执行文件。§1.5.1创建项目
1.创建新项目
2.打开和关闭项目 3.各类文件选项卡 §1.5.2 使用项目管理器
1.创建文件 2.添加文件 3.修改文件 4.移去文件
5.其他按钮:“浏览”按钮、“关闭”和“打开”按钮、“预览”按钮、“运行”按钮、“连编”按钮
§1.5.3 定制项目管理器
1.移动、缩放和折叠 2.拆分项目管理器 3.停放项目管理器
§1.6 向导、设计器、生成器简介
VF提供真正的面向对象的程序设计工具,使用它的各种向导、设计器和生成器可以更加简便、快速、灵活地进行应用程序开发。§1.6.1 Visual FoxPro的向导
1.启动向导 2.使用向导
3.修改用向导创建的项 §1.6.2Visual FoxPro的设计器
1.各种设计器:表设计器、数据库设计器、报表设计器、查询设计器、视图设计器、表单设计器、菜单设计器、数据环境设计器、连接设计器
2.打开Visual FoxPro设计器
§1.6.3Visual FoxPro的生成器
各种生成器:表单生成器、表格生成器、编辑框生成器、列表框生成器、文本框生成器、组合框生成器、命令按钮组生成器、选项按钮组生成器 1.启动“表单生成器”
2.对表单中的控件使用相应的生成器 3.使用自动格式生成器来设置控制格式 4.使用参照完整性生成器
本章小结:
本章首先介绍了数据库系统的有关概念、数据库管理系统的功能,然后介绍了VF6.0的初步知识,包括其用户界面、工具栏的使用和系统配置。通过本章的学习希望对数据库的相关知识有所了解,同时也对VF6.0有初步的认识,为后面的进一步学习打下基础。
本章作业:
1.数据库管理员的职责包括哪些方面? 2.简述数据库系统的特点。3.简述关系的特点。
4.数据库有哪些设计原则。5.简述数据库的设计步骤。6.创建项目的方法有哪些?
教学后记:
第2章 VF程序设计基础
本章重点与学习目标:
掌握VF常用数据类型
字符型、数值型、浮点型、双精度、整型等
掌握VF常量、变量的定义与使用方法及运算符和表达式
常量类型、变量类型及使用
VF运算符及优先级、VF各种表达式
了解VF程序设计基本知识及基本程序结构
程序文件的建立与编辑和程序的调用方法
程序的三种结构:顺序结构、分支结构、循环结构
掌握VF的过程与函数的定义及运用方法
子过程与过程的定义及操作 自定义函数的运用
掌握变量的作用域与参数的传递
VF变量的作用域 VF参数的传递
教学器材:
多媒体教学
本章课时:7学时
§2.1 常量与变量
VF主要数据类型有:字符型、数值型、货币型、日期型、日期时间型、逻辑型、备注型、通用型。§2.1.1 常量
常量是指在所有的操作过程中保持不变的数。
VF主要有:数值型常量、货币型常量、字符型常量、日期型常量、日期时间型常量和逻辑型常量。§2.1.2 变量
变量是能够随时更改的。每个变量有一个变量名。
命名规则:变量名以字母,汉字和下划线开头,后接字母、数字、汉字和下划线构成。
VF变量分为字段变量和内存变量
数组:与内存变量不同,数组在使用之前一般要DIMENSION或DECLARE命令显式创建,并且规定数组是一维数组还是二维数组,数组名和数组大小。
数组创建数组的格式:
DIMENSION <数组名>(<下标上限1> [,<下标上限2>])[,„] DECLARE <数组名>(<下标上限1> [,<下标上限2>])[,„] §2.1.3 内存变量常用命令
1.内存变量的赋值
格式1 :STORE <表达式>TO<内存变量名表> 格式2:<内存变量名>=<表达式>
2.表达式的显示
格式1 :?[<表达式表>] 格式2:??[<表达式表>] 3.显示内存变量
格式1: LIST MEMORY[LIKE<通配符>][TO PRINTER|TO FILE<文件名>] 2: DISPLAY MEMORY[LIKE<通配符>][TO PRINTER|TO FILE<文件名>] 4.清除内存变量
格式1 :CLEAR MEMORY 格式2:RELEASE<内存变量名表> 格式3 :RELEASE ALL [EXTENDED] 格式4:RELEASE ALL [LIKE<通配符>| EXCEPT<通配符>] 5.表与数组之间的数据传递
将表的当前记录复制到数组 格式1 :SCATTER [ FIELDS<字段名表>][ MEMO ] TO <数组名> [ BLANK ] 格式2:SCATTER [FIELDS LIKE<通配符>|FIELDS EXCEPT<通配符>] [ MEMO ] TO<数组名> [ BLANK ] §2.2 表达式
表达式是由常量、变量和函数通过特定的运算符连接起来的式子。§2.2.1 数值、字符与日期时间表达式
数值表达式又叫做算术表达式,是最容易理解的一种表达式。数值型数据可以是数值型常量或者变量。
运算符包括:()、**或^、*、/、%、+、-§2.2.2 关系表达式
称为简单逻辑表达式,它由关系运算符将两个运算对象连接起来形成。运算符包括:<、<=、>、>=、=、==、<>或#或!=、$ §2.2.3 逻辑表达式
由逻辑运算符将逻辑型数据连接形成的,其运算符结果仍然是逻辑数据。运算符包括:.NOT.或!(逻辑非)、.AND.(逻辑与)和.OR.(逻辑或)。§2.2.4 运算符优先级
表达式中出现了多种不同类型的运算符时,其运算符优先级如下:算术运算符>字符运算符和日期时间运算符>关系运算符>逻辑运算。可以用括号改变优先顺序,强令表达式的某些部分优先运行。括号内的运算总是优先于括号外的运算。对于多重括号,总是由内到外。§2.3 常用函数
§2.3.1 数值函数
常用数值函数有:ABS()函数、SIGN()函数、SQRT()函数、PI()函数、INT()函数、CEILING()函数、FLOOR()函数、ROUND()函数、MOD()函数、MAX()函数 §2.3.2 字符函数
常用字符函数有:LEN()函数、LOWER()函数、UPPER()函数、SPACE()函数、TRIM()函数、LTRIM()函数、ALLTRIM()函数、LEFT()函数、RIGHT()函数、SUBSTR()函数、OCCURS()函数、AT()函数、ATC()函数、STUFF()函数、CHRTRAN()函数、LIKE()函数 §2.3.3 日期和时间函数
常用日期和时间函数有:DATE()函数、TIME()函数、DATETIME()函数、YEAR()函数、MONTH()函数、DAY()函数、HOUR()函数、MINUTE()函数、SEC()函数 §2.3.4 数据类型转换函数
常用数据类型转换函数有:STR()函数、VAL()函数、CTOD()函数、CTOT()函数、DTOC()函数、TTOC()函数、宏替换函数 §2.3.5 测试函数
常用测试函数有:BETWEEN()函数、ISNULL()函数、EMPTY()函数、VARTYPE()函数、EOF()函数、BOF()函数、RECNO()函数、RECCOUNT()函数、IIF()函数、DELETED()函数 §2.4 程序与程序文件 §2.4.1 程序的概念
定义:程序是能够完成一定任务的命令的有序集合。这组命令被存放在称为程序文件或命令文件的文本文件中。
程序中经常插入注释,以提高程序的可读性。注释为非执行代码,不会影响程序的功能。
注释方式:NOTE<注释内容>或*<注释内容>,以NOTE或*开头的代码行为注释行,一般用于对下面一段命令的说明。
&&<注释内容>,命令行后可添加注释,对所在行命令的说明。
§2.4.2 程序文件的建立与执行
1.程序文件的建立
2.打开、修改程序文件 3.执行程序文件
§2.4.3 简单的输入/输出/命令
1.INPUT命令: INPUT [<字符表达式>] TO <内存变量> 2.ACCEPT命令:ACCEPT [<字符表达式>] TO <内存变量> 3.WAIT命令:WAIT [<字符表达式>] [TO <内存变量>] [WINDOW [AT <行>,<列>]][NOWAIT] [CLEAR | NOCLEAR] [TIMEOUT <数值表达式>] §2.5 程序的基本结构 §2.5.1 选择结构
1.简单形式的条件语句 IF <条件> <语句序列1> ENDIF 2.一般形式的条件语句
IF <条件> <语句序列1> ELSE <语句序列2> ENDIF 3.多分支语句
DO CASE CASE <条件1> <语句序列1> CASE <条件2> <语句序列2> „„ CASE <条件n> <语句序列n> [OTHERWISE <语句序列>] ENDCASE §2.5.2 循环结构
1.DO WHILE-ENDDO语句
DO WHILE <条件> <命令序列> [LOOP] [EXIT] ENDDO 2.FOR语句
FOR <循环变量>=<初值> to <终值> [step<步长>] <循环体> [EXIT] [LOOP] ENDFOR|NEXT 3.SCAN-ENDSCAN语句
SCAN [<范围>] [FOR <条件1>] [WHILE<条件2>] <循环体> [LOOP] [EXIT] ENDSCAN §2.6 多模块程序设计
模块是一个相对独立的程序段,它可以被其他模块所调用,也可以去调用其他的模块。通常,把被其他模块调用的模块称为子程序,把调用其他模块而没有被其他模块调用的模块称为主程序。§2.6.1 模块的定义和调用
1.模块的定义:模块可以是命令文件,也可以是过程。
语法格式:
PROCEDURE | FUNCTION<过程名> <命令序列> [RETURN[<表达式>]] [ENDPROC︱
格式1: SET PROCEDURE TO 功能:关闭所有打开的过程文件
格式2:RELEASE PROCEDURE <过程文件1>[,<过程文件2>,„] 2.模块调用
格式1:DO <文件名>︱<过程名> 格式2:<文件名>︱<过程名>()
§2.6.2 参数传递
1.PARAMETERS和LPARMETERS语句传递参数
PARMETERS<形参变量1>[,<形参变量2>,„] LPARMETERS <形参变量1>[,<形参变量2>,„] 2.调用模块程序
格式1:DO <文件名>︱<过程名>WITH<实参1>[,<实参2>,„] 格式2:DO <文件名>︱<过程名>(<实参1>[,<实参量2>,„])
§2.6.3 变量的作用域
1.变量的作用域:指变量在什么范围内是有效的或者能够被访问的。
内存变量分类:公共变量、私有变量、局部变量 2.变量的隐藏
开发应用程序时,主程序与子程序不一定是由同一个人来设计的,子程序中用到的变量实际上在主程序中已经建立,子程序的运行会无意间改变主程序中变量的取值。为了解决这个问题,可以采用在子程序中使用PRIVATE命令隐藏主程序中可能存在的变量,使得这些变量在子程序中暂时无效。
格式:PRIVATE <内存变量表> PRIVATE ALL[LIKE<通配符>|EXCEPT<通配符>] 本章小结:
本章主开始先介绍了语言的一些基本成分,包括常量、变量、函数和表达式,同时也介绍了一些相关的命令,在后半部分主要介绍了程序设计的基本内容,包括程序的概念、程序的基本结构、多模块程序设计等。通过本章的学习要求同学们对程序设计有初步的了解,并且能编写小的算法程序来进行特定的数据处理。本章作业:
上机练习课后习题三
教学后记:
第3章 VF数据库及操作
本章重点与学习目标: 了解VF项目管理器 熟悉VF数据库
数据库的创建方法 数据库的应用 数据库的修改 数据库的删除
掌握VF数据库表的相关操作
数据库表、自由表的创建 表结构的修改
数据库表的关闭与打开 数据库表的基本操作
掌握数据库表索引
索引的类型 索引的建立
了解数据完整性相关概念 教学器材:
多媒体教学
教学课时:4学时
§3.1 Visual FoxPro数据库及其建立 §3.1.1 基本概念
数据库:数据库是一个逻辑上的概念和手段,通过一组系统文件将相互关联的数据库表及其相关的数据库对象统一组织和管理。§3.1.2 建立数据库
常用方法:(1)使用项目管理器中建立数据库
(2)使用“新建”对话框建立数据库(3)使用命令方式建立数据库
格式:CREATE DATABASE[Databasename|?] §3.1.3 使用数据库
常用方法:(1)在“项目管理器”中打开数据库
(2)通过“打开”对话框打开数据库(3)使用命令方式打开数据库 格式:OPEN DATABASE §3.1.4 修改数据库
常用方式:(1)从项目管理器中打开数据库设计器
(2)用“打开”对话框打开数据库设计器
§3.1.5 删除数据库
常用方法:(1)使用项目管理器删除数据库
(2)使用命令方式删除数据库 格式:DELETE DATABASE DatabaseName|? [DELETETABLES] [RECYCLE] §3.2 建立数据库表
§3.2.1 在数据库中建立表
方法:(1)使用项目管理器建立数据库表
(2)使用“新建”或CREATE命令建立数据库表
§3.2.2 修改表结构
方法:(1)在“项目管理器”中修改表结构
(2)在“数据库设计器”中修改表结构(3)使用命令修改表结构
如果当前不在数据库设计器中,则首先要用USE命令打开要修改的表,然后使用命令方式MODIFY STRUCTURE打开表设计器。
§3.3 表的基本操作
§3.3.1 使用浏览器操作表
方法:(1)在项目管理器中将数据库展开至表,并且选择要操作的表,然后单击“浏览”命令按钮即可。(2)在数据库设计器中选择要操作的表,然后从“数据库”菜单中
选择“浏览”,或者对要操作的表单击鼠标右键,然后从快捷菜单中选择“浏览”。(3)在命令窗口中,用USE命令打开要操作的表,然后输入BROWSE 命令来浏览表。
§3.3.2 增加记录的命令
APPEND命令: APPEND命令是在表的尾部增加一个或多个新记录。
格式:APPEND或APPEND BLANK INSERT命令: INSERT命令可以在表的任意位置插入新的记录。
格式:INSERT [BEFORE][BLANK] §3.3.3 删除记录的命令
逻辑删除: DELETE [FOR<逻辑表达式>] 恢复记录的命令: RECALL [FOR<逻辑表达式>] 物理删除有删除标记的记录: PACK 物理删除表中的全部记录: ZAP §3.3.4 修改记录的命令
EDIT或CHANGE命令交互修改:这两个命令均用于交互式地对当前表记录进行编辑、修改,操作界面类似于APPEND界面。修改后用CTRL+W或ESC退出界面
REPLACE命令直接修改: REPLACE 字段名1 WITH 表达式1 [,字段名2 WITH 表达式2]„ [FOR 表达式] §3.3.5 显示记录的命令
LIST/DISPLAY命令: LIST/DISPLAY [[FIELDS] Fiedlist] [FOR lExpression1] [OFF] [TO PRINTER [PROMPT] | TO FILE FileName] §3.3.6 查询定位命令
用GO、GOTO命令直接定位: GO 记录号 |TOP | BOTTOM SKIP命令: SKIP [nRecords] 用LOCATE命令定位: LOCATE FOR 条件表达式
§3.4 索引
§3.4.1 基本概念 定义:VFP索引是指由指针构成的文件,这些指针逻辑上按照索引关键字的值进行排序。
分类:主索引、候选索、唯一索引、普通索引 §3.4.2 在设计器中建立索引
1.单项索引
2.复合字段索引:在多个字段上的索引称做复合字段索引。
3.索引文件的种类:非结构单索引文件、非结构复合索引文件、结构复合索引文件
§3.4.3 用命令建立索引
命令:INDEX ON eExpression TO IDXFileName|TAG TagName [OF CDXFileName] [FOR lExpresssion][COMPACT] [ASCENDING|DESCENDING] [UNIQUE|CANDIDATE] [ADDITIVE] §3.4.4 使用索引
命令格式:SET ORDER TO [ nIndexNumber | [TAG] TagName ] [ASCENDING|DESCENDING] §3.4.5 使用索引快速定位
Seek命令格式:SEEK eExpression [ORDER nIndexNumber | [TAG]
TagName ][ASCENDING|DESCENDING] §3.4.6 删除索引
格式1:DELETE TAG TagName1 格式2:DELETE TAG ALL §3.5 数据完整性
§3.5.1 实体完整性与主关键字
实体完整性是保证表中记录唯一的特性,在VFP中利用主关键字和候选索引字来保证表中记录的惟一性,即实体惟一性。§3.5.2 域完整性与约束规则
域完整性:通过限定字段的取值类型和取值范围来保证域完整性,还可以进一步通过域约束规则来保证域完整性。约束规则也称作字段有效性规则,用于检验输入数据的正确性。
§3.5.3 参照完整性与表之间的联系
建立参照完整性:(1)建立表之间的“永久联系”。
(2)设置参照完整性约束。
§3.6 自由表
§3.6.1 数据库表与自由表
创建自由表:(1)使用项目管理器创建自由表
(2)利用菜单方式创建自由表
(3)利用命令窗口的create命令创建自由表
§3.6.2 将自由表添加到数据库
方法:(1)使用项目管理器添加自由表
(2)使用数据库设计器添加自由表(3)利用窗口命令添加自由表 §3.6.3 从数据库中移出表
方法:(1)使用项目管理器移出表
(2)使用数据库设计器移出表(3)利用命令窗口方式移去表
§3.7 多个表的同时使用
§3.7.1 多个工作区的概念
多工作区: VF中在一个工作区中可以使用一个表,如果在同一时刻需要打开多个表,则只需要在不同的工作区中打开不同的表。系统默认的总是在第1个工作区中工作,如果没有指定工作区,实际是都是在第1个工作区打开表和操作表。
利用命令窗口选择工作区: SELECT nWorkAreca | cTabeleAlias §3.7.2 使用不同工作区的表
Visual FoxPro也允许利用IN 命令在一个工作区内使用另一个工作区的表。即命令: In nWorkAreca | cTabeleAlias §3.7.3 表之间的联系
建立临时关联: SET RELATION TO eExpression1 INTO nWorkAreca | cTabeleAlias
§3.8 排序
排序是将记录按需要的顺序重新排列,产生一个新的数据库文件,实现从物理上对数据库的重新排列。
物理排序: SORT TO TableName ON FieldName1[/A | /D] [/C] [, FieldName2 [/A | /D] [/C] „] [ASCENDING | DESCENDING] [FOR lExpression1] [ FIELDS FieldNamelist ] 本章小结
本章主要介绍了VF数据库相关概念与操作,数据库表的创建与基本操作,表索引的创建。通过本章的学习要求掌握数据库的基本操作,表的建立与结构的设置,索引的建立方法,了解数据的完整约束。
本章作业:
上机联系课后习题三
教学后记:
第4章 关系数据库标准语言SQL 本章重点与学习目标: SQL语言概述
了解SQL语言的相关知识 掌握SELECT语句的使用方法
查询功能
掌握SELECT语句的使用方法
了解使用谓词和量词的复杂查询语句
操作和定义功能
掌握插入、更新和删除等操作语句
掌握表的定义、删除和结构修改等定义语句 掌握视图的定义方法
教学器材:
多媒体教学
教学课时:8学时
§4.1 SQL概述
SQL定义:SQL(Structured Query Language)是一种非过程化的语言,也是结构化查询语言的缩写,是关系数据库的标准语言。
§4.2 查询功能
SQL的核心是查询,SQL的查询命令也称SELECT命令,它提供了简单而又丰富的SELECT数据查询语句。语法格式:
SELECT [ALL | DISTINCT] [TOP nExpr [PERCENT][Alias.] Select_Item [AS Column_Name][,[Alias.] Select_Item [AS Column_Name]„]FROM [FORCE][DatabaseName!] Table [[AS] Local_Alias][[INNER |LEFT [OUTER] | RIGHT [OUTER] | FULL [OUTER] JOIN[DatabaseName!] Table [[AS] Local_Alias][ON JoinCondition]]„][[INTO Destination][TO FILE FileName [ADDITIVE] | TO PRINTER [PROMPT]| TO SCREEN]][PREFERENCE PreferenceName][NOCONSOLE][PLAIN][NOWAIT] [WHERE JoinCondition [AND JoinCondition„][AND |OR FilterCondition [AND | OR FilterCondition„]]][GROUP BY GroupColumn [,GroupColumn„]][HAVING FilterCondition][UNION [ALL] SELECTCommand][ORDER BY Order_Item [ASC | DESC][,Order_Item [ASC | DESC]„]] §4.2.1 简单查询
定义:简单查询是针对单个表的查询,由SELECT和FROM短语构成无条件查询或由SELECT、FROM和WHERE短语构成条件查询。
举例:课本例4.1~4.5 §4.2.2 简单的连接查询
定义:简单联接查询也是一类基于多个表的查询,与嵌套查询的区别是要查询的结果可以出自多个表中,而嵌套查询的结果是基于一个表中。举例:课本例4.6与例4.7 §4.2.3 嵌套查询
定义:嵌套查询基于多个关系的查询,查询的结果是来自一个表,而查询的条件却涉及到多个表。
举例:课本例4.8、4.9与例4.10 §4.2.4 几个特殊运算符
运算符:LIKE和 between „ and 举例:课本例4.11、4.12与例4.13 §4.2.5 排序
格式:ORDER BY Order_Item [ASC | DESC][,Order_Item [ASC |DESC]„] 举例:课本例4.14与例4.15 §4.2.6 简单的计算查询
字段函数:COUNT、SUM、AVG、MAX、MIN 举例:课本例4.16~4.20 §4.2.7 分组与计算查询
格式:GROUP BY GroupColumn [,GroupColumn„] [HAVING FilterCondition 举例:课本例4.21与例4.22 §4.2.8 利用空值查询
空值:NULL值
举例:课本例4.23与例4.24 §4.2.9 别名与自连接查询
格式:<关系名><别名> 举例:课本例4.25 §4.2.10 内外层互相关嵌套查询
前面讨论的都是外层查询依赖于内层查询的结果,实际上,有时也需要内、外层互相关的查询,这是内层查询的条件需要外层查询提供值,而外层查询的条件需要内层查询的结果。举例:课本例4.26 §4.2.11 使用量词和谓词的查询
格式说明:<表达式> <比较运算符> [ ANY | ALL |SOME ](子查询)和[NOT] EXISTS(子查询)举例:课本例4.27~4.30 §4.2.12 超连接查询
分类:左联接、右联接、完全联接 命令格式:SELECT„„FROM Table INNER | LEFT | RIGHT | FULL JOIN Table ON JoinCondition WHERE„„ 举例:课本例4.31~4.34 §4.2.13 集合的并运算
定义:并运算是将两个SELECT语句的查询结果合并成一个查询结果。运算符:UNION §4.2.14 VF SQL SELECT的几个特殊选项
1.显示部分结果
2.将查询结果放到数组中 3.将查询结果放到临时文件中 4.将查询结果存放到永久表中 5.将查询结果存放到文本文件中 6.将查询结果直接输出到打印机 举例:课本例4.35、4.36 §4.3 操作功能
§4.3.1 插入数据
格式一:INSERT INTO dbf_name[(fname1[,fname2,„])] VALUES(eExpression1[,eExpession2,„])格式二:INSERT INTO dbf_name from ARRAY ArrayName | from memvar §4.3.2 更新数据
格式:UPDATE TableName
set Column_Name1=eExpession1 [,Column_Name2=eExpession2„] where condition §4.3.3 删除数据
格式:delete from TableName [where condition] §4.4 定义功能
§4.4.1 表的定义
通过create table命令来建立表,格式为:
create table | DBF TableName1 [NAME LongTableName ] [FREE](FieldName1 FieldType[(nFieldWidth [,nPrecision])] [NULL|NOT NULL] [CHECK lExpession1 [ ERROR cMessageText1]] [DEFAULT eExpession1] [PRIMARY KEY | UNIQUE] [REFERENCES TableName2 [TAG TagName1]] [NOCPTANS] [, FieldName2 „ ] [, PRIMARY KEY eExpression2 TAG TagName2 |, UNIQUE eExpession3 TAG TagName3] [, FOREIGN KEY eExpression4 TAG TagName4 [NODUP] REFERENCES TableName3 [TAG TagName5]] [, CHECK lExpression2 [ERROR cMessageText2]])| FROM ARRAY ArrayName §4.4.2 表的删除
命令为:DROP TABLE table_name
直接从数据库删除表对应的文件。如果是数据库中的表并且相应的数据库是当前数据库,则从数据库中删除了表,否则虽然从磁盘上删除了表文件,但是在数据库中的信息却没有删除,此后会出现错误提示。§4.4.3 表结构的修改
用三种命令格式,格式1为:
ALTER TABLE TableName1 ADD | ALTER [COLUMN] FieldName1
FieldType [(nFieldWidth [, nPrecision ])] [NULL | NOT NULL] [CHECK lExpression1 [ERROR cMessageText1]] [DEFAULT eExpression1] [PRIMAY KEY | UNIQUE] [REFEENCES TableName2 [TAG TagName1]] 格式2为:
ALTER TABLE TableName1 ALTER [COLUMN] FieldName2 [NULL|NOT NULL] [SET DEFAULT eExpression2] [SET CHECK lExpression2 [ERROR cMessageText2]] [DOP DEFAULT ] [DROP CHECK] 格式3:
ALTER TABLE TableName1 [DROP [COLUMN] FieldName3] [SET CHECK lExpression3 [ERROR cMessageText3]] [DROP CHECK] [ADD PRIMARY KEY eExpression3 TAG TagName2 [FOR lExpression4]] [DROP PRIMARY KEY ] [ADD UNIQUE eExpression4 [TAG TagName3 [FOR lExpression5]]] [DROP UNIQUE TAG TagName4 ] [ADD FOREING KEY [eExpression5] TAG TagName4 [FOR lExpression6] REFERENCES TagName2 [TAG TagName5] [DROP FOREIGN KEY TAG TagName6 [SAVE]] [ RENAME COLUMN FieldName4 TO FieldName5] §4.4.4 视图的定义
格式:CREATE VIEW view_name AS select_statement
本章小结:
本章比较全面地介绍了关系数据库标准语言SQL,重点介绍了SQL语言的查询语句。通过本章的学习,要求掌握SQL查询语句,并对其数据操作和定义有一定的掌握。本章作业:
上机练习课后习题三
教学后记:
第5章 查询与视图
本章重点与学习目标: 熟悉查询设计器
查询设计器的各个选项 运用查询设计器创建查询
掌握VF视图的相关知识
视图的相关概念
视图设计器的运用方法
视图的创建及数据更新方法
教学器材:
多媒体教学
教学课时:2学时
§5.1查询
§5.1.1查询的概念
定义:查询是指向一个数据库发出的检索信息的请求,它使用一些条件提取特定的记录。实质上就是一个预先定义好的SOL SELECT语句,以扩展名为qpr的文本文件保存在磁盘上的。§5.1.2查询设计器
1.打开查询设计器建立查询 2.利用查询向导建立查询 §5.1.3建立查询
例5.1 建立一个含有仓库号、职工号、城市和工资信息的查询
例5.2 在以上基础上为查询增加查询计算表达式,计算出年工资。例5.3 为查询设计排序,先按仓库号升序排列,再按工资降序排列。例5.4 利用分组功能统计各仓库年工资额的合计。§5.1.4查询设计器的局限性
1.当建立查询并存盘后将产生一个扩展名为qpr的文本文件。
2.如果熟悉SOL SELECT,则可以直接用各种文本编辑器,通过自己写的SOL SELECT语句建立查询,最后把它保存查询设计器的局限性为扩展名为qpr的文件。
3.查询设计器只能建立一些比较规则的查询,而复杂的查询(嵌套查询)就不行了。
§5.1.5使用查询
1.查询的运行
2.设计查询的输出形式 §5.2视图
§5.2.1视图的概念
视图:视图是一种基于表或其他视图而定制的虚拟表,因此,视图兼有“查询”和“表”的特点。
分类:本地视图、远程视图: §5.2.2建立视图
建立视图的方法:
1.使用CREATE VIEW命令打开视图设计器建立视图; 2.选择菜单“文件→新建”建立视图; 3.在“项目管理器”中建立视图; 4.直接用SQL命令建立视图。§5.2.3远程视图与连接
1.定义数据源和连接:可以在VFP内部定义数据源和连接。
2.建立连接:使用项目管理器建立连接、使用菜单方式建立连接、使用CRETE CONNECTION 命令 3.建立远程视图
连接建立好之后就可以建立远程视图了。
建立远程视图和建立本地视图的方法基本上是一样的,只是在打开视图设计器时有所不同。
建立远程视图时,一般要根据网络上其它计算机或其它数据库中的表建立视图,所以需要首先选择“连接”或“数据源”,然后再进入界面建立远程视图。
§5.2.4视图与数据更新
1.指定可更新的表 2.指定可更新的字段 3.检查更新合法性 4.使用更新方式 §5.2.5使用视图
1.视图操作 2.使用视图
本章小结:
本章主要介绍了Visual FoxPro检索和操作数据库的两个基本工具或手段:查询和视图,它们都是根据基本表定义的,定义方式也类似,通过本章的学习要求掌握查询和视图的建立与使用方法。
本章作业:
上机练习课后习题三
教学后记:
第五篇:VF统计命令教案
VF——统计命令
教学目标:
1、知识目标:理解掌握统计命令的格式及应用
2、能力目标:培养学生分析判断能力
3、情感目标:培养学生科学探索精神 教学重点:命令格式的应用
教学难点:书写正确的命令及命令的灵活运用 课时安排:1课时
教学方法:讲授法、启发法、比较分析法、讲练结合法 教学过程:
(一)复习提问:(写出相应命令)
1、显示前3条记录
2、逻辑删除数学大于60的记录
3、将所有记录的总分加5分
(二)导入新课:
对记录的操作除了显示、删除和成批修改,还可以对记录进行计数求和求平均值等操作。
(三)讲授新课
一、计数命令(讲练结合法,启发教学)
格式:COUNT [<范围>][FOR<条件>][TO<变量>]
功能:统计表中指定范围内满足条件的记录个数.注意
1)缺省[<范围>]表示全部
2)TO<变量>表示将结果保存到变量中
二、求和命令(讲练结合法、启发教学)
格式:SUM [<范围>][<数值型字段表>][FOR<条件>][TO<变量表>]
功能:对表中指定范围内满足条件的数值型字段分别求和
注意
1)缺省[<数值型字段表>]表示对表中所有数值型字段分别求和
2)TO<变量表>表示将结果依次保存到变量中;求和的字段个数必须与变量
个数一致
思考:运用以上两条命令是否可以得到语文的平均值
三、求平均值(讲练结合法、比较分析法)
格式:AVERAGE [<范围>][<数值型字段表>][FOR<条件>][TO<变量表>]
功能:对表中指定范围内满足条件的数值型字段分别求平均值
(四)课堂小结
(五)作业
1、统计学籍表中计算机专业的汉族人数
2、对成绩表中的数学和VF分别求和并保存
3、对成绩表中的数学求平均值并保存