版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章VFP数据库及其操作第三章VFP数据库及操作3.1创建项目
3.5创建数据库
3.2创建数据表
3.3数据表的基本操作与维护
3.4数据表的排序与索引
3.6建立数据字典
在VFP中,项目是文件、数据、文档和VFP对象的集合,它包含了一个应用系统开发过程中使用的各种数据库、表、查询、表单、报表、应用程序及它所有文件。
扩展名:pjx
3.1创建项目1、建立工作目录
setdefaulttod:\vfp2、建立项目文件有两种方式:(1)菜单方式(2)命令方式格式:CREATPROJECT[<项目文件名>]练习:创建名为学生管理的项目文件.3.1创建项目3、打开项目文件
(1)菜单方式(2)命令方式格式:MODIFYPROJECT[<项目文件名>]3.1创建项目例:打开学生管理.pjx项目.打开的项目如右图:3.2.1定义表结构1.基本概念数据库表:VFP中的数据表属于某个数据库,称数据库表.自由表:数据表与数据库无关、单独存在的,称自由表.2.定义表结构
(1)字段名由字母、汉字、数字或下划线组成,不能有空格。必须以字母或汉字开头。数据库表字段名最长为128个字符,自由表字段名最长为10个字符。
(2)字段类型(13种)
(3)字段宽度
(4)小数位(小数位数不能大于9,双不大于18)3.2创建数据表3.创建自由表(1)用项目方式创建(2)用菜单方式(3)命令方式格式:CREATE<表文件名>例:创建名为学生信息表、选课信息表和成绩信息表三个表。可采用任意一种方法创建。3.2创建数据表创建学生信息表时表设计器如下:3.2创建数据表表结构定义好后,单击确定按钮,弹出下面对话框:3.2创建数据表单击是,输入记录;单击否,生成空表;3.2.2输入记录
向表中输入记录时,窗口有两种形式:一种使浏览窗口,一条记录占一行;一种是编辑窗口,一个字段占一行。
注意:备注型及通用型字段的输入方法.下图为学生信息表的两种窗口:3.2创建数据表浏览窗口编辑窗口常见错误:1.表结构还没设计完呢,误关窗口,如何继续?显示/表设计器2.不小心关闭了输入数据窗口,想继续输入数据怎办?显示/浏览,显示/追加方式继续输入数据3.3.1数据表的打开与浏览1.数据表的打开菜单方式:文件—打开命令方式:USE[表文件名][EXCLUSIVE]|[SHARED]例:打开学生信息.dbf。3.3数据表的基本操作与维护2.浏览与显示表结构菜单方式:显示—表设计器命令方式:list/displaystructure例:浏览与显示学生信息表.dbf表结构。3.3.1数据表的打开与浏览注意:总计比字段之和多1。是用来存放删除标记的。3.浏览与显示表记录(1)菜单方式:显示—浏览或编辑(2)命令方式:格式1:browse[范围][fields<字段列表>][for<条件>]格式2:list|display[范围][fields<字段列表>][for<条件>][off]
范围:
record<n>next<n>allrest例:浏览与显示学生信息表.dbf表记录。3.3.1数据表的打开与浏览3.3.1数据表的打开与浏览菜单方式筛选记录:表—属性(3)在浏览窗口中有选择地浏览数据:筛选记录、选择字段。例:筛选出学生信息表中男学生记录。课堂练习:
筛选出DJKS表中考场为401的男生记录。3.3.1数据表的打开与浏览3.3.1数据表的打开与浏览思考:如何取消筛选?方法:表—属性—删掉数据过滤器里的内容.1.菜单方式3.3.2记录的定位2.命令方式(1)GO|GOTO[RECORD]|TOP|BOTTOM函数:recno()、bof()、eof()(2)
SKIP[+|-][<算术表达式>]
说明:SKIP与SKIP1命令等价(3)LOCATE[<范围>]FOR<条件>[WHILE<条件>]
说明:①如找到满足条件的记录,则指针指向该记录;如没找到,则指向表文件结束位置。②FOR<条件>表示在指定范围内,定位满足条件的第一条记录。③WHILE<条件>表示仅当条件满足时才进行记录的定位。④如指针要指向下一条满足条件的记录,可使用命令CONTINUE。3.3.2记录的定位3.3.2记录的定位例:打开“学生信息”表,用LOCATE命令定位所有性别为女的学生记录。注:Found()函数,如果找到满足条件的记录,则函数返回值为真,否则为假。1.菜单方式:显示—表设计器2.命令方式:modifystructure说明:在表设计器窗口,可以修改已有的字段、增加字段、删除字段和改变字段顺序.3.3.3修改表结构修改学生信息表的表结构.1.在浏览窗口中追加记录(1)菜单方式:显示—追加方式(2)命令方式:append[blank]2.插入记录命令方式:insert[before][blank]3.从其他文件中追加记录(1)菜单方式(2)命令方式格式:APPENDFROM<源表文件名>[FIELDS<字段名表>][FOR<条件>]说明:只有名称和类型相匹配的字段内容才予以追加。3.3.4添加记录1.在浏览、编辑窗口修改记录(1)菜单方式(2)命令方式格式:BROWSE|EDIT|CHANGE[FIELDS<字段名表>][FOR<条件表达式>]
功能:打开浏览窗口,显示记录,进行编辑和修改。2.批量修改记录(1)菜单方式:表—替换字段3.3.5修改记录(2)命令方式格式:REPLACE[<范围>][<字段1>WITH<表达式1>[ADDITIVE][,<字段2>WITH<表达式2>[ADDITIVE]…][FOR<条件>][WHILE<条件>]功能:对当前数据表中指定范围内满足条件的记录进行批量修改。注意:此命令非常重要,大家必须掌握.3.3.5修改记录例:打开“学生信息”表,给女学生的奖学金加10,用REPLACE命令完成,并显示结果。
USE学生信息
REPLACE奖学金WITH奖学金+10FOR性别=“女”
LIST学号,姓名,性别,奖学金
use课堂练习:
将djks表中考场401改为509。
3.3.5修改记录1.逻辑删除(1)菜单方式例:将学生信息表中奖学金<200的记录删除.如下图所示:3.3.6删除记录(2)命令方式格式:DELETE[<范围>][FOR<条件>][WHILE<条件>]功能:给当前数据表文件中满足条件的记录加删除标记。说明:若省略<范围>和<条件>选项,则只给当前记录加删除标记。(3)鼠标方式3.3.6删除记录2.恢复逻辑删除的记录(1)菜单方式例:恢复学生信息表中奖学金<200的记录.如下图:3.3.6删除记录(2)命令方式
RECALL<范围>[FOR<条件>][WHILE<条件>](3)鼠标方式3.物理删除(1)菜单方式(2)命令方式
PACK4.一次性删除记录
ZAP**记录删除,保留表结构课堂练习:把学生信息表中的所有记录彻底删除.3.3.6删除记录3.3.7数据表与数组间的数据交换1、表的当前记录复制到数组格式:SCATTER[FIELDS<字段名表>][MEMO]TO<数组名>功能:将当前数据表中的当前记录按字段顺序复制到指定的数组中。见书例3-17、3-18P652、将数组复制到表的当前记录
格式:GATHERFROM<数组名>[FIELDS<字段名表>][MEMO]功能:从数组的第一个元素开始,将各元素的值顺序复制到当前记录的指定字段中。
3.3.8数据表的复制1、数据表文件的复制
(1)菜单方式打开原表选文件导出
(2)命令方式
格式:COPYTO<新表文件名>[范围][FIELDS<字段名表>][FOR<条件>][WHILE<条件>]
功能:将当前数据表文件的内容全部或部分复制到新文件中。2、数据表结构的复制
格式:COPYSTRUCTURETO<新表文件名>[FIELDS<字段名表>]
功能:复制全部或部分表结构。3.数据表的重新命名(1)项目管理器方式(2)命令方式格式:RENAME<源表文件名>to<新表文件名>功能:改名说明:①源表文件名和新表文件名必须带扩展名。②可使用通配符对一组文件进行更名。数据表的辅助文件也必须更名。课堂练习:
将学生信息表中的编号、姓名、性别、党员否的字段内容复制到学生表中,将学生表重命名为xs.3.3.8数据表的复制3.4.1数据表的排序
排序是把表中的记录按照某个字段值的大小顺序重新排列.命令格式:Sortto文件名on字段名/a或/dfor条件例1:对学生信息表按性别降序排序,生成新表abc.dbfSorttoabcon性别/dUseabc
list3.4数据表的排序和索引3.4.2数据表的索引1.索引的基本概念(1)索引:是由指针构成的文件,这些指针逻辑上按照索引关键字的值进行排序。创建索引是创建一个由指向表文件记录的指针构成的文件。(2)索引的类型(不要求)
◆独立索引(扩展名为.idx)◆结构复合索引(扩展名为.cdx
)◆非结构复合索引(扩展名也为.cdx
)(3)索引关键字及索引关键字的类型p72
◆主索引(索引关键字的值必须唯一)◆侯选索引(同上)◆唯一索引(忽略重复字段,只存储第一个)◆普通索引(索引字段、索引项都可重复)2.建立索引(1)在表设计器中建立索引
注意:索引关键字可以是单个字段,也可是多个字段的组合;多个字段间用“+”联接。如组成表达式的类型不同,必须转换为相同的类型。如:在学生信息表中,按性别和专业编号建立普通索引,索引表达式为:性别+专业编号又如:按性别和出生日期建立普通索引,索引表达式为:性别+DTOC(出生日期)
(2)用命令建立索引(不能建主索引)
格式:INDEXON<索引关键字表达式>TAG<索引标识名>[UNIQUE|CANDIDATE][ASCENDING|DESCENDING][FOR<条件>]
功能:建立结构复合索引。3.按索引顺序浏览记录(1)菜单方式(2)命令方式格式:SETORDERTO[TAG<索引标识名>]功能:在打开的复合索引文件中设置一个索引标识作为主标识,使数据表中的记录按该索引顺序处理。说明:不带TAG<索引标识名>选项,表示取消使用任何索引。例:设置学生信息表的结构复合索引文件中的索引标识为性别_专业编号的索引为主索引,并显示学生信息表的记录,最后取消索引3.4.3索引查询
在VFP系统中,当对数据表建立索引后,可使用FIND,SEEK等专门的数据表查询命令,实现快速记录指针定位。1、FIND命令(不要求)2、SEEK命令格式:SEEK〈表达式〉[ORDER[TAG]<索引标识名>][ASCENDING|DESCENDING]功能:在索引文件中查找关键字内容与表达式相同的第一条记录。例:假设已在学生信息表中按“性别”和“性别_奖学金”建立索引,用命令进行查询。
SEEK“男”order性别
SEEK“男”+str(300)order性别_奖学金1、数据表的统计
(1)计数命令
格式:COUNT[<范围>][FOR<条件>][WHILE<条件>][TO<内存变量名>]
功能:在当前数据表文件中,统计指定范围内满足条件的记录个数。
(2)求和命令
格式:SUM[<字段表达式表>][<范围>][TO<内存变量名表>|TOARRAY<数组名>][FOR<条件>][WHILE<条件>]
功能:对当前数据表中满足条件的记录根据指定的数值型字段表达式按列求和。
3.4.4数据表的统计与汇总(3)求平均值命令格式:AVERAGE[<字段表达式表>][<范围>][TO<内存变量名表>|TOARRAY<数组名>][FOR<条件>][WHILE<条件>]功能:对当前数据表中满足条件的记录按指定的数值型字段求平均值。2、数据表的分类汇总(略)课堂练习:
1.求男生的平均奖学金.2.统计女生人数.3.4.4数据表的统计与汇总3.5.1数据库的创建3.5创建数据库建立数据库有三种方式:
1.在项目管理器中建立数据库
2.菜单方式
3.命令方式格式:CREATEDATABASE[<数据库名>]例:用命令方式建立名为“学生管理”的数据库。
CREATEDATABASE学生管理.DBC提示:是在默认路径下建立.3.5.2数据库的基本操作1、打开数据库
(1)项目管理器方式
(2)菜单方式
(3)命令方式
①打开数据库文件格式:opendatabase[<文件名>]
②打开数据库设计器格式:MODIFYDATABASE[<文件名>]3.5创建数据库3.5.2数据库的基本操作
2.关闭数据库
(1)项目管理器方式(2)命令方式格式:CLOSEDATABASE[ALL]
3、删除数据库
(1)项目管理器方式(2)命令方式格式:DELETEDATABASE<数据库文件名>[DELETETABLES]例:打开教学管理数据库,并关闭。3.5创建数据库3.5.3数据库表的建立1.在数据库中建立数据表2.向数据库添加自由表例:向学生管理数据库中添加学生信息、选课信息和成绩信息三个表。如下图:3.从数据库中移去数据表3.5创建数据库3.6.1设置表的字段属性例1:在学生信息表中为专业编号字段指定标题为:学生的专业编号。设置方法:数据库表-----右键----修改------标题查看方法:显示-----浏览,即可看到字段名称已改变。注意:字段标题仅在显示时改变,实际字段名并没有改变。3.6建立数据字典3.6.1设置表的字段属性例2:在学生信息表中为性别字段设置规则为:性别只能是男或女,出错提示为:性别必须是男或女,不接受其它值。设置方法:
数据库表-----右键----修改----规则和信息规则:性别=“男”.or.性别=“女”或:性别$“男女”信息:“性别必须是男或女,不接受其它值。”查看方法:显示---浏览3.6.2设置表的有效性规则例3:在学生信息表中为“性别”字段设置默认值为:“男”。设置方法:
数据库表-----右键----修改-
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学数学一年级第二学期口算计算共3005道题
- 农业生产技术的创新发展与商业机遇挖掘
- 以目的地为驱动的家庭旅行路线规划
- 优化医疗系统让运动场地更安全更便捷
- 园林绿化养护工作总结(10篇)
- 创业公司的品牌色彩构建策略
- 创新思维训练激发孩子的创新潜能
- 关于在办公室和制造领域中实施智能工控系统的探索
- 儿童心理发展视角下的跨文化家庭教育研究
- 创新技术在学校体育馆维护中的应用
- 完整教案-数字媒体艺术概论
- 天纪-先天卦-后天卦-流年卦
- 清华大学出版社机械制图习题集参考答案-第三版
- 单位事故隐患排查治理制度及台账
- 编制说明 钻井液用沥青类
- HTS新编说明书
- 跟班学习自我鉴定-跟班学习个人总结.doc
- 电子研发项目奖金分配奖励制度
- [部编版]四年级语文上册期末复习教案
- 餐饮管理标准培训课件.ppt
- 《计量经济学》期末考试题库及答案(完整版)
评论
0/150
提交评论