全国计算机等级考试二级VFP培训随堂笔记.docx
《全国计算机等级考试二级VFP培训随堂笔记.docx》由会员分享,可在线阅读,更多相关《全国计算机等级考试二级VFP培训随堂笔记.docx(68页珍藏版)》请在冰点文库上搜索。
全国计算机等级考试二级VFP培训随堂笔记
全国计算机等级考试二级VFP培训随堂笔记
考试概述
一、所报科目:
二级VFP数据库程序设计
二、考试内容及考核方式
选择题:
二级公共基础10分+二级VFP数据库30分
总分40分
上机操作题:
基本操作题18分
简单应用题24分
综合应用题18分
满分100分时间120分钟
注意:
上机操作题部分36分以上
三、考试软件
操作系统平台windows7/windowsxp
软件平台Microsoftvisualfoxpro6.0
微软可视化狐狸专业的
1.VFP6.0启动与退出
开始---程序---microsoftvisualfoxpro6.0-找到应用程序----单击
退出:
单击关闭按扭
2.VFP6.0界面初识
重点讲解1:
命令窗口
1.知识点:
在VFP中有三种操作方式:
菜单方式,命令方式和程序方式
以退出VFP为例:
菜单方式:
文件退出
命令方式:
quit
2.命令窗口的显示与隐藏
菜单方式:
窗口命令窗口
快捷键:
ctrl+F2显示
Ctrl+F4隐藏
重点讲解2:
默认目录的建立----重点
步骤:
1)在D盘新建一个名为VFP的文件夹
2)工具选项文件位置默认目录勾选”默认目录”找到对应的文件选定确定确定
第三章visualfoxpro数据库及基本操作
第一节:
visualfoxpro数据库操作
补充:
数据(data):
凡是能够计算机所处理的东西---理解
Eg:
数字文字照片音乐电影……
数据库(database):
顾名词义:
数据的仓库----在VFP中数据库是用来存储和管理数据库对象(数据库表,视图,触发器,有效性约束等)的一个容器---理解
操作:
建立,打开,修改,关闭,查看,删除……
在做VFP所有操作之前一定要先做默认目录
一、建立数据库----考点
1.菜单----会自动打开数据库设计器
文件新建数据库新建文件输入文件名(注意:
数据库的扩展名是.dbc)保存
知识点:
文件名的组成
基本文件名.扩展名
基本文件名:
表示文件的内容
扩展名:
表示文件会用什么样软件来打开它
.doc----word
.xls----excel
.ppt----powerpoint
.mp3----媒体播放器
2.命令----不会打开数据库设计器
createdatabase数据库文件名.dbc
注意:
除汉字以外的其他字符必须为英文状态输入
二、打开数据库---考点
1.菜单
文件---打开---先选择文件类型,再选择要打开的数据库—确定
2.命令
opendatabase数据库文件名.dbc
注意:
在VFP中打开并不意味着一定要看到设计器
三、关闭数据库---重点
1.关闭当前数据库
closedatabase什么都不加
2.关闭所有
closeall
四、删除数据库----考试不考---了解
deletedatabase数据库文件名不加扩展名
第二节:
visualfoxpro数据库表的操作
补充:
关系:
用二维表的方式来表示实体及实体集之间关系的一种模型
学生表
姓名
性别
年龄
张三
男
18
李四
女
19
王五
男
20
赵六
女
22
孙七
男
21
实体:
客观存在的并且可以相互区别的事物
Eg:
人书计算机花……
实体集:
实体的集合
Eg一个人---实体
一群人---实体集
二维表=关系
关系的组成:
(二维表的组成)
行:
二维表中的每一行,除了第一行叫元组(记录)
列:
二维表中的每一列,只有第一行叫属性(字段)
一、VFP中表的分类
1.自由表:
不在数据库里的表,叫自由表
2.数据库表:
在数据库里的表,叫数据库表
二、数据库表的操作
(一)建立数据库表
引:
姓名
性别
年龄
张三
男
李四
女
王五
男
赵六
女
孙七
男
前提:
先打开数据库
1.菜单
文件新建表新建文件输入文件名(注意:
关系的扩展名.dbf)保存表设计器确定现在输入记录吗?
-->是输入记录即可
否—不输入记录(空表)
表设计器界面的认识
上半部分:
字段名:
用户指定或题目指定
考点:
字段名命名规则:
1)由字母,汉字,数字,下划线组成
2)由字母,汉字,下划线开头,不能以数字开头
3)在VFP中不区分大小写
类型:
几种常考的数据类型
掌握点:
1)字母表示2)组成3)功能4)注意项
类型
字母表示
组成
功能
注意项
字符型
C(character)
字母,汉字,符号
用于显示的字段
数值型
N(numberic)
数字,小数点,正负号
用于计算的字段
日期型
D(date)
yyyy-mm--dd
默认状态在输入一个具体日期时要以月日年的方式来输入
逻辑型
L(logical)
.T.(true).F.(false)
如:
婚否
T已婚
F未婚
整型
I(integer)
数字正负号
宽度:
设置宽度的意义在于使内存达到最优
知识点:
在VFP中1个汉字占2个宽度,1个字母,1个符号,1个数字均占1个宽度,注意:
小数点也占1个宽度
小数位数:
只针对数值型数据而言
快捷菜单:
在数据库设计器面板上建立数据库表
在数据库设计器面板上空白处----右键---新建表---新建表-输入表名(.dbf)表设计器-…
2.命令
前提:
先打开数据库
create表名.dbf
功能:
打开表设计器
(二)打开数据库表
1.菜单
文件打开先选择文件类型,再选择要打开的表确定
注意:
用菜单方式打开表时,一定要勾选独占,否则无法修改表结构
Shared表示只读方式打开
Exclusive表示独占方式打开
快捷键:
在数据库设计器----选择表---右键---修改
2.命令
use表名.dbf默认为独占方式打开
(三)修改数据库表
解决问题:
打开---处理---关闭
重点讲解一:
设置字段有效性规则
实现原理:
如果规则表达式的值为真,则允许继续输入,否则弹出设置信息
设置方法:
1)选择字段
2)规则表达式的设置
3)设置提示信息
默认值:
当添加一条记录时,系统默认的值
注意:
在输入一个具体值时要考虑加不加定界符的问题
字符型“”‘’[]
数值型没有
重点讲解二:
设置null值
重点讲解三:
对字段的日常操作
(四)关闭数据库表
1.菜单
窗口----数据工作期---选择要关闭的表----关闭
2.命令
use什么都不加
全国计算机等级考试二级VFP培训随堂笔记
第二节:
Visualfoxpro数据库表的操作
一、建立数据库表
二、打开数据库表
三、修改数据库表
(一)简单修改
(二)重点讲解
1.设置字段的有效性规则
2.设置null值
null值:
尚未确定的值,如商品的单价为null(空值),并不是说这个商品价格是0或者免费,也不是空格,也不什么没填
设置方法:
表设计器----选择字段---勾选null值---默认值中输入.null.
3.对字段的日常操作
a.增加字段
1)直接表的尾部追加---考点
表设计器----直接尾部追加
Eg:
在学生表中增加籍贯字段,类型为字符,宽度为20?
Use学生表.dbf
Modifystructure
Use
2)在两个字段之间插入----考点
Eg:
在姓名和性别之间插入一个学号字段,类型整型,宽度是默认
方法:
在两个之间插入字段,一般选择后面的
b.修改字段(类型,宽度,小数位数)
Eg:
将学生表中的性别字段修改为数值型,宽度为10,小数位数0?
c.删除字段
Eg:
删除学生表中的籍贯字段?
四、表的关闭
1.菜单
窗口----数据工作期---选择表---关闭
2.命令use什么都不加
第三节:
visualforpro数据库表记录的操作
明确:
表的组成:
属性和元组
表结构(表设计器)和表记录(表的浏览窗口)
一、表记录的浏览
(一)表记录的浏览
1.菜单:
打开表----显示----浏览
数据库设计器面板上----选择表---右键---浏览
数据库设器面板上班---选择表----双击
2.命令:
List:
在主工作区显示表中所有记录
Display:
在主工作区显示表中当前记录
Browse:
在表的浏览窗口显示表中所有记录
(二)表记录的存储结构
(三)表记录的定位
绝对定位
Gobottom|top|记录编号
Gotobottom|top|记录编号
功能:
将记录指针,强行指到某一记录上
相对定位
Skipnn是一个整数
n>0记录指针向后跳
n<0记录指针向前跳
功能:
相对当前记录,将记录指针,向前或向后跳n个位置
二、表记录的整体操作
(一)表记录的增加
1.菜单
打开表----打开浏览窗口---显示---追加方式-----可以增加多条记录
打开表---打开浏览窗口---表----追加新记录-----只能增加一条记录
Ctrl+y----只能增加一条记录
2.命令
Append:
在表的尾部追加多条记录
Insert:
在表中当前记录的后面增加多条记录
注意:
在表中设置字段有效性规则或主索引后,不能再使用insert命令
(二)表记录的删除
1.VFP中删除的分类
a.逻辑删除:
将想要删除的前面增加逻辑删除标记,必要时可以恢复
b.物理删除:
将带有逻辑删除的记录,物理删除掉,并且此操作不可恢复
c.清空表:
“格杀勿论”不管带不带删除标记,全部干掉,只保留表结构
2.操作方法:
逻辑删除命令:
Delete:
逻辑删除表中当前记录
Deleteall:
逻辑删除表中所有记录
Deletefor条件:
逻辑删除表中满足条件的记录
逻辑删除恢复命令:
Recall:
恢复表中当前记录
Recallall:
恢复表中所有记录
Recallfor条件:
恢复表中满足条件的记录
物理删除命令:
pack
清空表命令:
zap
(三)表记录的修改
1.简单修改
直接在表的浏览窗口下进行
2.表记录的替换
Replace要修改的字段with表达式
功能:
替换表中当前记录
Eg:
将学生表中第三条记录的年龄增加10岁?
Use学生表.dbf
Go3
Replace年龄with年龄+10
Replaceall要修改的字段with表达式
功能:
将学生表中的所有学生年龄增加10岁?
use学生表.dbf
browse
replaceall年龄with年龄+10
use
Replace要修改的字段with表达式for条件
功能:
替换表中满足条件的记录
Eg:
将学生表中所有女生的年龄都减少10岁?
use学生表.dbf
browse
replace年龄with年龄-10for性别="女"
use
三、表记录的排序与索引
排序的中心思想:
“快速查询”
数据库中有两种方式:
1.物理排序:
改变记录的物理记录编号
实现:
sortto新表名.dbfon排序字段[/d]
处理问题思想:
打开—处理—关闭
2.逻辑排序(索引):
并不会改变记录的物理记录编号
排序方式
区别
代价
中心思想
物理排序
改变记录编号
硬盘存储空间
快速查询
逻辑排序
不改变记录编号
维护表的代价
索引的建立:
菜单:
表设计器----选择要设置索引的字段---设置索引升降序---选择“索引”页---索引类型---确定—是
重点讲解:
索引
1.索引文件的分类
在VFP中索引文件分为2种:
单一索引文件:
扩展名为.idx
复合索引文件:
扩展名为.cdx
复合索引文件(结构化复合索引文件与非结构化复合索引文件(了解))
结构化复合索引文件:
就是指索引文件的文件名与表的文件名除扩展名外是相同的如学生表.dbf和学生表.cdx---理解
2.要区分索引名与索引文件名?
索引文件名是在默认目录下看到的名字
而索引是在表设计器的“索引”页看到的名字
3.索引的类型:
补充:
主关键字(primarykey):
在一个表中至少应该有这样子一个字段,这个字段所对应的字段值不能有重复,不能有空值(null)值,由于满足这个特征,该字段就可以起到唯一标识表中记录的作用,我们把这种字段就叫作主关键字.
学生表
学号
姓名
性别
年龄
1001
张三
男
18
1002
李四
女
19
1003
王五
男
20
1004
赵六
男
21
1005
孙七
女
18
外部关键字(foreignkey)在一个表中的某个字段它不能作为本表的主关键字,但是它可以作为其它表的主关键字,我们把这种字段叫外部关键字
成绩表
姓名
成绩
张三
78
李四
97
王五
76
张三
96
李四
79
索引的分类
索引类型
特征
个数
来源
主索引
字段不允许有重复值和空值,能起到唯一标识表中记录的作用
1个
主关键字
候选索引
多个
唯一索引
允许字段值有重复,有空值
多个
无
普通索引
多个
无
唯一索引:
并不是指字段值的唯一,而是指只出现相同记录第一条.
普通索引就是一种排序关系
考点:
复合字段建索引?
Eg:
在学生表中建立一个名为xx的主索引,顺序为降序,表达式是”姓名+性别”?
方法:
表设计器---选择“索引”页----根据题意输入索引名---根据题意选择索引类型----根据题意设置索引升降序---确定---是
注意:
由于结构化复合索引的文件名与表的文件名相同,所以打开表的同时会自动打开索引文件,但并不会索引顺序来显示,必须加setorderto索引名的方式来设置显示顺序
第四节:
Visualfoxpro数据库的数据完整性
一、数据完整性的概念
数据完整性是指保证记录正确性,唯一性,完备性的一种特性。
二、数据完整性的分类
1.实体完整性:
保证表中记录的唯一性,即在任何一个表至少要有一个能起到唯一标识表中记录作用的字段
实体完整性的实现:
依靠给表建立主索引或候选索引来保证
2.域完整性(用户自定义的完整性):
保证表中字段值的正确性,如性别只能取男或女
域完整性的实现依靠给表中字段建立字段有效性规则来保证
3.参照完整性:
两个表之间相互制约,相互影响的一种关系
如何实现?
----“结婚了,引发的一系列问题”
1)建立两个表之间的永久关联----“结婚”----考点1
步骤:
(1)确保要建立联系的两个表在同一个数据库中
(2)保证两个表有公共字段----“夫妻相”
(3)如果公共字段值无重复,则判断此表为父表
(4)如果公共字段值有重复,则判断此表为子表
(5)为父表的公共字段建立主索引或候选索引
(6)为子表的公共字段建立普通索引
(7)从父表主索引或候选索引的一方,按下鼠标左键不动,拖拽至子表普通索引的一方,松开你的小手
2)设置参照完整性----考点:
步骤:
a.清理数据库-----目的是将表中带有逻辑标记的记录物理删除掉
如何清理数据库数据库清理数据库
不能清理时,需要在命令窗口输入clearall以关闭所有表
b.单击关系连接线使其变黑变粗----在黑线上单击右键----编辑参照完整性
选择题考点:
更新规则:
级联,限制,忽略
删除规则:
级联,限制,忽略
插入规则:
限制和忽略
三、自由表与数据库的表区别及相互转化
1.不同
a.数据库表支持长表名和长字段名(128个字节),而自由表不行(10个字节)
b.数据库表可以设置主索引和字段有效性规则,而自由表不行
2.相互转化
数据库表自由表
菜单:
数据库设计器面板上选择要移出的表--右键-删除-移去-是
命令:
removetable表名不加扩展名
自由表数据库表
菜单:
数据库设计器面板的空白处-单击右键-添加表-选择要添加的表-确定
命令:
addtable表名.dbf
补充内容:
一、利用命令建立索引
语法格式:
indexon索引表达式tag索引名
use学生表.dbf
indexon年龄tagnlsy****建立普通索引
modifystructure
use
indexon索引表达式tag索引名candidate
use学生表.dbf
indexon姓名tagxmsycandidate****建立候选索引
modifystructure
use
indexon索引表达式tag索引名unique***唯一索引
use学生表.dbf
indexon性别tagxbsyunique
use
注意:
在第三章的index命令中不能建立主索引
二、多工作区的使用
1.工作区的相关概念
a.在VFP中共有32767个工作区
b.一个工作区,只能打开一个表
c.1-10号工作区,默认别名为A-J
11-32767号工作区,指定别名为W11-W32767
d.刚启动VFP时,默认状态为1号工作区
e.select0含义的理解:
选择编号最小的尚未使用的空闲工作区
2.工作区的使用
a.先选择工作区,后打开表
select11
use学生表.dbf
browse
select12
use成绩表.dbf
browse
b.打开表的同时,指定工作区
use学生表.dbfin101
select101
browse
use成绩表.dbfin202
select202
browse
c.打开表的同时,指定工作区及工作区别名
use学生表.dbfin303aliasw303
select303
browse
use成绩表.dbfin404aliasw404
selectw404
browse
三、两个表之间临时关联的建立
方法一:
先选择工作区,后打开表
步骤:
1)先随机选择一个空闲工作区
2)在所选工作区上打开子表
3)为子表的公共字段利用命令建立普通索引
4)再选择一个空闲工作区
5)在所选工作区上打开父表
6)利用setrelationto公共字段名into子表名(不加扩展名)的方式建立两表临时关联
验证:
先在父表所在工作区做browse操作,再到子表所在工作区做browse操作,以观察指针的联动
理解:
指针联动关系?
子表的记录指针,会随父表记录指针的移动而移动
Eg:
select111
use成绩表.dbf
indexon学号tagxhsy
select222
use学生表.dbf
setrelationto学号into成绩表
browse
select111
browse
方法二:
打开表的同时,指定工作区
步骤:
1)打开子表并随机指定一个空闲工作区
2)选择上述工作
3)利用indexon命令为子表的公共字段建立普通索引
4)打开父表并随机指另外一个空闲工作区
5)再选择上述工作区
6)利用setrelationto公共字段名into子表名(不加扩展名)来建立两表的临时关联
验证:
先在父表所在工作区做browse操作,再到子表所在工作区做browse操作,以观察指针的联动
理解:
指针联动关系?
子表的记录指针,会随父表记录指针的移动而移动
第四章关系数据库语言
SQL简介
一、SQL名称
二、SQL特点
三、提示
第一节:
数据定义
建立表结构和修改表结构
一、建立表----数据库表
前提:
打开数据库
1.基本表的建立----考点
Createtable表名(字段名1类型(宽度),字段名2类型(宽度),……,字段名n类型(宽度))
数据类型:
字符型C宽度自定义“”‘’[]
数值型N宽度自定义无
日期型D宽度为8{^yyyy-mm-dd}
逻辑型L宽度为1...T..F.
备注型M宽度为4无
通用型G宽度为4无
整型I宽度为4无
2.建立表的同时设置字段的有效性规则----考点
Createtable表名(字段名1类型(宽度),字段名2类型(宽度);
Check逻辑表达式error“提示信息”default默认值,;
字段名3类型(宽度),……,字段名n类型(宽度))
createtable学生表(姓名c(8),性别c
(2);
check性别="男"or性别="女";
error"性别必须是男或女";
default"女",;
年龄i)
3.建立表的同时设置主索引
Createtable表名(字段名1类型(宽度)primarykey,字段名2类型(宽度),……,字段名n类型(宽度))
Eg:
createtable学生表(姓名c(8)primarykey,;
性别c
(2),年龄n
(2))
4.建立表的同时设置永久关联
Createtable子名表(字段名1类型(宽度),字段名2类型(宽度),……,foreignkey索引表达式tag索引名reference父表名)
createtable成绩表(姓名c(8),成绩n(6,2),;
foreignkey姓名tagxmsyreference学生表)
二、修改表结构
统一的语法格式:
altertable表名
原则:
要修改谁就alter谁
1.增加字段
语法格式:
Altertable要修改的表名add新字段新类型(新宽度)
Eg:
给学生表增加籍贯字段,类型为字符,宽度为20
Altertable学生表add籍贯c(20)
2.删除字段
语法格式:
Altertable表名drop要删除的字段
Eg:
删除学生表中的籍贯字段
Altertable学生表drop籍贯
3.修改字段的类型和宽度
语法格式
Altertable表名alter要修改的字段新类型(新宽度)
Eg:
将学生表中的性别字段修改为数值型,宽度为15
Altertable学生表alter性别n(15)
4.修改字段名称
语法格式:
Altertable表名rename[column]原字段名to新字段名
Eg:
将学生表中的姓名字段修改为名字?
Altertable学生表rename姓名to名字
altertable学生表renamecolumn名字to姓名
前四点比较简单----尽量掌握
5、给表中已