VF笔记.docx
- 文档编号:8943400
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:19
- 大小:50.38KB
VF笔记.docx
《VF笔记.docx》由会员分享,可在线阅读,更多相关《VF笔记.docx(19页珍藏版)》请在冰豆网上搜索。
VF笔记
一、基础知识:
1、开机方法:
先开显示器,再开主机。
2、关机方法:
先关闭所有打开的窗口,“开始”-“关闭系统”-“关机”。
最后关闭显示器的电源按钮。
3、中英文切换:
Ctrl+空格
4、窗口的切换:
Alt+Tab
5、大小写字母的切换:
CapsLock
6、删除字符:
Backspace:
删除光标之前的字符
Delete:
删除光标之后的字符
7、插入与改写:
Insert
二、VisualFoxPro的用途
VisualFoxPro是目前微机上优秀的数据库管理系统之一,它采用了可视化的、面向对象的程序设计方法,大大简化了应用系统的开发过程,并提高了系统的模块性和紧凑性。
三、表的模型
表在日常生活中对应的是一张二维表格的形式。
下面是一张“设备清单”表:
编号
名称
启用日期
价格
部门
主要设备
备注
商标
016-1
车床
03/05/90
62044.61
21
T
Memo
gen
016-2
车床
01/15/92
27132.71
21
T
memo
gen
037-1
磨床
07/21/90
241292.12
22
T
memo
gen
038-1
钻床
10/12/89
5275.00
23
F
Memo
gen
100-1
微机
08/12/97
8810.00
12
T
memo
Gen
101-1
复印机
06/01/92
10305.01
12
F
memo
gen
210-1
轿车
05/08/95
151000.00
11
F
memo
Gen
建表时,二维表标题栏的列标题称为表的字段名,表中的一列数据称为一个字段。
标题栏下方的内容输入到表中成为表的数据,每一行数据称为表的一个记录。
也就是说,表是由结构和数据两部分组成。
上面表中含有8个字段和7个记录,即表的数据共包括7个记录,其中每一个记录含有8个字段值。
建立表结构就是定义各个字段的属性,其中的字段属性可包括字段名、字段类型、字段宽度和小数位数等。
四、启动VisualFoxpro
1、双击VF图标。
2、右击VF图标-打开。
3、选中VF图标,按回车键。
4、在“开始”菜单中打开。
五、VisualFoxpro界面
显示、隐藏命令窗口的三种方式:
p24
(1)单击命令窗口右上角的关闭按钮可关闭它,通过“窗口”菜单下的“命令窗口”选项可重新打开。
(2)单击“常用”工具栏上的“命令窗口”按钮,按下则显示,弹起则隐藏命令窗口。
(3)按Ctrl+F4组合键隐藏命令窗口,按Ctrl+F2组合键显示命令窗口。
六、VisualFoxpro的退出
1、用鼠标单击标题栏右侧的关闭按钮。
2、从“文件”菜单下选择“退出”命令。
3、双击标题栏左侧的VF图标。
4、单击标题栏左侧的VF图标,从下拉菜单中选择“关闭”。
5、将VF窗口设为活动窗口,按Alt+F4。
6、在命令窗口中输入Quit,按回车键。
设置默认目录的方法:
工具选项“文件位置”选中“默认目录”,单击“修改”,设为自己的文件夹中即可。
命令的使用规则和符号约定
命令的使用规则:
(1)命令必须以命令字开头,后面短语的先后顺序可以是任意的。
(2)命令字、各短语之间要用至少一个空格分开。
(3)命令动词呈蓝色表示输入正确,否则错误。
(4)命令动词和关键字可以缩写为前四个字符。
(5)“表达式清单”中各数据项之间要用逗号分隔。
(6)一行只能写一条命令。
(7)若一条命令需要分行书写,就在第一行的末尾加上续行符“;”在第二行继续书写。
(8)命令必须以回车键结束。
2、命令格式中的符号约定
命令中的<>、[]、|、…等符号,都不是命令本身的语法成分,使用时不能随命令输入。
<>表示必选项,由用户使用时给出具体值。
[]表示可选项,用户根据具体情况确定选用或不选用。
|表示两边的部分只能选择使用一个。
…表示列表中可以有任意个参数,各参数之间用逗号隔开。
自由表的建立
一、表的建立
菜单方式:
文件-新建-在对话框中选择表-新建文件-选择保存位置并输入表名-保存-进入表设计器。
命令方式:
create 表名
或者直接输入create-选择保存位置并输入表名-进入表设计器。
表的扩展名为.dbf
在表设计器中输入各字段名、类型、宽度及小数位数。
输入完成,单击“确定”。
此时会弹出“输入记录询问”对话框,单击“是”按钮时,在其字段值处依次输入各字段值即可。
二、表结构参数
1、字段名:
即字段的名称,即表的列名。
2、类型与宽度:
表中一列数据的取值类型。
字段类型、宽度及小数位数等属性都用来描述字段值。
(1)字符型(C):
存放从键盘输入的可显示或可打印的汉字或字符。
一个字符占1个字节,一个汉字占2个字节。
字符型字段最多允许存在254个字符。
(2)数值型(N):
存放由正负号、数字和小数点所组成的且能参与数值运算的数据。
小数点和正负号在宽度中占一位。
(3)货币型(Y):
用于存储货币量,与数值型不同的是数值保留4位小数。
(4)日期型(D):
存储日期,包括数据和斜杠分隔符,一般格式为{mm/dd/yy},(也可自己设定日期的显示方式)其中mm,dd,yy分别代表月,日,年。
在内存中占8个字节。
(5)日期时间型(T):
存储日期和时间。
例05/15/9511:
00:
00am表示1995年5月15日上午11点整。
在内存中占8个字节。
(6)逻辑型(L):
存放逻辑值T或F,.T.和.t.表示“真”,.F.和.f.代表“假”。
逻辑型变量在内存中占1个字节。
(7)整型(I):
存放不带小数的数值,在内存中占4个字节。
(8)备注型(M):
能接受一切字符型数据(如某人的个人简历),数据保存在与表的主名同名的备注文件中,其扩展名为.fpt,该文件随表的打开自动打开,若备注文件被损坏或丢失则表就打不开,备注型在内存占4个字节。
(9)通用型(G):
用来存放图形、电子表格、声音等多媒体数据。
数据也存储在扩展名为.fpt的备注文件中,宽度为4个字节。
注:
备注型和通用型的宽度用于表示数据在.FPT文件中的存储地址。
例、一个表的所有备注字段的内容存储在()
A、同一个表备注文件中B、多个表备注文件中
C、一个表文件中 D、同一个库备注文件中
问:
如果有一个表职工情况表.dbf,该表有三个个备注型字段,两个通用型字段,则该表有几个备注文件,文件名是什么?
3、小数位数:
只有数值型数据才规定小数位数。
应注意小数点和正负号都必须在字段宽度中占一位。
例15479.51宽度应为8位,小数位为2位。
4、NULL:
指尚未确定的值。
(Ctrl+0)
注:
必须先在表设计器中设定NULL值,才可以用Ctrl+0输入null值。
三、表的打开
菜单方式:
文件-打开-选择要打开的表-确定。
注:
若要修改表的结构,还应选定“打开”对话框中的“独占”复选框,否则打开的表是只读的,不能修改。
命令方式:
use 表名
要显示表记录可用browse命令。
四、表的关闭
菜单方式:
数据工作期窗口—选择要关闭的表—关闭
命令方式:
use (不跟表名)
关闭已经打开的表
五、修改表的结构
菜单方式:
打开表后,“显示”-“表设计器”可打开表的设计器,对表的结构进行修改。
命令方式:
modifystructure
功能:
打开表设计器,对其结构进行修改。
六、表结构的显示
命令格式:
liststructure|displaystructure
说明:
在VF的显示区显示出表的结构。
用list可连续显示,直到显示完成为止。
用display可分屏显示:
显示完一屏,就等待用户输入任意键继续。
注:
表的字段总宽度为各字段宽度之和再加1,其中1用来存放表记录的删除标记。
七、表记录的显示
打开表后,显示-浏览|编辑 可在浏览或编辑窗口中显示表的记录。
也可以对错误的值进行修改。
表的基本操作
一、数据表记录的定位
表打开时,记录指针总是指向第一条记录,即当前记录。
菜单方式:
打开表的浏览窗口,将指针放在某条记录上可以完成记录指针的定位。
1、记录指针绝对移动命令
格式:
gon或goton将记录指针指向第
gotop 将记录指针指向表的第一条记录。
gobottom将记录指针指向表的最后一条记录。
2、记录指针相对移动命令
格式:
skipn
说明:
使记录指针从当前记录开始向表文件尾(n为正值)或表文件尾(n为负值)移动n条记录。
缺省n默认n的值为1。
二、显示记录
list范围显示表中指定范围内的记录
display显示表中的当前记录
list for条件显示表中指定范围满足条件的记录
browse可在浏览窗口中显示表的所有的记录
list字段名for条件
显示满足条件的记录的部分字段值
四种范围子句:
all表示所有记录
nextn表示从当前记录起向表末尾的n条记录
rest表示从当前记录起到表的末尾之间的所有记录
recordn表示记录号为n的那条记录。
定界符:
规定了数据的起始位置和数据类型。
字符型定界符:
“”‘’[]半角
日期定界符:
{}{^yyyy-mm-dd}
逻辑定界符:
.t..f.
例:
1、显示第5条记录
listrecord5 或者是 ?
?
2、显示第5条至第10条之间的记录
go5
listnext6
3、列出所有的男生记录
listfor性别=“男”
4、列出1980年以后出生的学生的姓名和出生日期
list姓名,出生日期 for出生日期>={^1980-1-1}
三、追加记录
Append:
在表的末尾追加若干条记录
Appendblank:
在表的末尾追加一条空记录
Insert:
在当前记录之后追加记录
Insertblank:
在当前记录之后追加一条空记录
Insertbefore:
在当前记录之前追加记录
Insertbeforeblank:
在当前记录之前追加一条空记录
菜单方式:
表-追加新记录(Ctrl+Y)在表尾追加一条新记录
表-追加记录将另外的表的记录追加到当前表中
显示-追加方式在表尾追加若干条记录
四、修改记录
1、编辑修改
格式:
edit
change
可打开编辑窗口对表中的记录进行修改。
2、替换修改 (成批的修改)
格式1:
replaceall字段名with字段值,…
功能:
替换修改所有记录的字段值。
不加all只修改当前记录的值。
格式2:
replace字段名with字段值,…for条件
功能:
替换修改满足条件的所有字段值。
例:
replaceall奖金with80,工资with800for性别=”女”
菜单方式:
表-替换字段
例、要为当前表所有职工增加100元工资,应该使用命令()
A、change工资with工资+100
B、replace工资with工资+10
C、changeall工资with工资+100
D、replaceall工资with工资+100
五、数据表记录的删除
删除记录分为打上删除标记(即逻辑删除)和从磁盘上删除(即物理删除)。
1、逻辑删除记录
格式:
delete 逻辑删除当前记录
delete for条件 逻辑删除满足条件的记录
菜单:
表-删除记录
2、恢复记录
恢复记录是指去掉删除标记,但已被物理删除的记录是不可恢复的。
格式:
recall 只恢复当前记录
recallfor条件 恢复满足条件的记录
菜单:
表-恢复记录
3、物理删除记录
格式:
pack
说明:
对当前表中所有带有删除标记的记录永久性删除
菜单:
表-彻底删除
注意:
物理删除记录之前必须先逻辑删除记录
4、记录清除命令
格式:
zap
说明:
物理删除当前表中的所有记录,只保留表结构。
执行zap命令相当于执行deleteall和pack两条命令。
六、顺序查询
格式:
Locatefor 条件
功能:
将记录指针定位在满足<条件>的第一个记录上。
Locate只能找到满足条件的第一个记录,要找满足条件的下一个记录,必须使用continue.查询到符合条件的记录之后,可使用disp命令显示出来
七、复制表结构与复制表文件
1、复制表结构
命令:
copystructureto新表名
功能:
将当前有的结构复制到一个新表中。
注意:
只复制结构,不复制数据。
2、复制表
命令:
copyto表名
功能:
将当前表复制得到一个新表。
注意:
新表内容和原表一样,只是表名不同。
数据库
数据库是一个逻辑上的概念和手段,通过一组系统文件将相互关联的数据库表及其相关数据对象进行统一的组织和管理。
P81 新P93
数据库是结构化的相关数据集合,不仅可以描述数据本身,还包括相关数据之间的联系。
在建立数据库时,不仅会建立扩展名为.dbc的文件,还会自动建立一个扩展名为.dct的数据库备注文件和一个扩展名为.dcx的数据库索引文件。
一、创建数据库
菜单方式:
文件-新建-文件类型中选择数据库-新建文件-选择库的保存位置并输入库名-进入数据库设计器。
命令方式:
createdatabase数据库名
二、打开数据库
菜单方式:
文件-打开-在文件类型中选择数据库-选择要打开的数据库-确定。
命令方式:
opendatabase数据库名|?
?
可以打开文件夹选择数据库。
三、设置当前数据库
菜单方式:
在工具栏数据库下拉列表中选择即可。
命令方式:
setdatabaseto库名
四、关闭数据库
命令:
closedatabase
功能:
只能关闭当前数据库。
扩展:
closeall关闭所有的库和表
clearall 关闭所有的表
五、修改数据库
打开库设计器进行修改即可。
命令:
modifydatabase库名
注:
不加库名表示修改当前数据库。
六、删除数据库(保证先关闭再删除)
命令:
deletedatabase库名 [recycle]
加上[recycle]子句表示将库放入回收站,必要时可以进行恢复。
否则为彻底删除。
七、在数据库中新建表
菜单方式:
在打开数据库时,文件-新建在文件类型中选择表。
数据库--新建表
在数据库设计器中右击-新建表
命令:
create表名
功能:
若当前有打开的数据库,则表示在当前库中新建表。
八:
向数据库中添加表
菜单方式:
数据库-添加表
在数据库设计器中右击-添加表
命令方式:
addtable表名|?
?
表示打开文件夹选择要添加哪个表。
自由表与数据库表的区别:
1、自由表字段名最长10个字符
数据库表字段名最长128个字符
2、自由表与数据库表的表设计器不同。
九、从数据库中移去表
菜单方式:
在数据库设计器中选择表后-数据库-移去
在表上右击-删除
命令方式:
removetable表名
在执行时,系统会提示“把表从数据库的移走还是从磁盘上删除?
”
移走:
将数据表从当前数据库中移出成为自由表,还可以将它添加到其他库中。
删除:
将数据表从磁盘上真正的物理地删除,以后再也不存在此表文件。
十、浏览数据库中表和显示数据库中表
浏览:
在数据库设计器中双击表名或右击-浏览
修改:
在数据库设计器的表名上右击-修改打开表的设计器进行修改即可。
十一、数据库表的字段特性
规则:
用于输入对字段数据有效性进行检查的规则,它实际上是一个条件对于在该字段输入的数据,VFP命令会自动检查它是否符合条件,若不符合必须进行修改直至与条件符合才允许光标离开该字段。
(逻辑表达式)
信息:
用于指定出错提示信息,当该字段输入的数据违反条件时,出错信息将照此显示。
(字符表达式)
默认值:
文本框用于指定字段的默认值,当增加记录时,字段默认值会在新记录中显示出来,从而提高输入速度。
例:
设置字段规则时,“字段有效性”对话框的“规则”和“信息”中应分别输入()
A、字符串表达式和逻辑表达式
B、逻辑表达式和字符串表达式
C、逻辑表达式和数值表达式
D、字符表达式和数值表达式
索引
一、索引(P96新P108)
文件中的记录一般按其磁盘存储顺序存放,这种顺序称为物理顺序。
索引是按某个索引关键字(或其表达式)进行排序生成的一个索引文件,表文件和索引文件分别存储。
索引文件中的记录是按关键字值升序或降序排列的,这样的顺序称为逻辑顺序。
索引的定义:
索引是由指针构成的文件,这些指针逻辑上按照索引关键字的值进行排序。
表文件和索引文件分别存储
二、索引的作用P99P110
提高查询速度。
但是索引会降低插入、删除和修改等操作的速度。
三、索引的类型
1、主索引:
在指定的字段中不允许出现重复值的索引。
一个库表只能建立一个主索引。
自由表不能建立主索引。
2、候选索引:
和主索引一样,建立索引的字段不允许重复。
一个表可以建立多个候选索引。
3、唯一索引:
指索引项的唯一,而不是字段值的唯一。
建立唯一索引的字段可以有多个相同的字段值,但是在索引文件中只保留相同字段值的第一个。
4、普通索引:
决定记录的处理顺序,它不仅允许字段中出现重复值,并且索引项中也允许出现重复值。
四、索引的分类:
单索引文件(.idx)和复合索引文件(.cdx)
五、索引文件的建立
在“表设计器”中建立。
命令:
indexon索引表达式tag索引名 建立普通索引
indexon索引表达式tag索引名unique 建立唯一索引
indexon索引表达式tag索引名candidate建立候选索引
功能:
建立一个(和表同名)的复合索引(.cdx),所有的复合索引都保存在和表同名的cdx索引文件中
复合索引的特性:
在打开表时自动打开
在同一索引文件中能包含多个索引方案,或索引关键字。
在添加、更改或删除记录时自动维护索引。
例:
建立唯一索引后,只存储重复出现记录值的()
A、最后一个B、第一个
C、全部 D、字段值不唯一,不能存储
六、使用复合索引
打开索引后,表文件中的顺序将按打开的索引顺序排列。
也可以在浏览表时选择表―属性在其中进行设置。
命令:
set order to 复合索引名
setorderto tag复合索引名
恢复表记录物理顺序:
setorderto
例:
在vf中,将当前索引文件中的“姓名”设置为当前索引,应使用()
A、setorder姓名B、setordertag姓名
C、setordertotag姓名D、useindextotag姓名
七、使用索引快速定位
使用索引可实现记录指针的快速定位。
此命令只适合于以字符型,数值型和日期型字段建立的索引。
格式:
seek 表达式order索引名
功能:
在已建索引文件中按索引关键字搜索满足<表达式>值的第一条记录.
例:
index on姓名 tag姓名
seek“张三” order姓名
例、当前正在使用“雇员编号”表,将记录指针定位在编号为34558的记录上的命令是()
A、set'34558'order学号
B、put'34558'order学号
C、create'34558'order学号
D、seek'34558'order学号
八、索引文件的删除
格式1:
deletetag<索引文件名>
功能:
用于删除建立的复合索引。
格式2:
deletetagall
功能:
删除所有的复合索引。
相关练习:
1、在vf中,有关索引的命令有多中,下列命令中错误的是()
A、set<表文件名>indexon<索引文件名>
B、use<表文件名>index<索引文件名>
C、indexon学号to<索引文件名>
D、setindexto<索引文件名>
2、vf支持的两种类型的索引文件是()
A、单索引文件和复合索引文件
B、单索引文件和主索引文件
C、主索引文件和复合索引文件
D、专用索引文件和普通索引文件
3、当打开数据表及其相关索引时,有关主索引的叙述正确的是()
A、可以将表文件同时设置多个主索引
B、同一时刻只能将一个索引文件设置为主索引
C、只要指定主索引文件,就不能更改关于主索引文件的设置D、索引文件只要打开就能对记录操作起作用
4、以下关于索引的说明中,错误的是()
A、索引可以提高查询速度
B、索引可以降低更新速度
C、索引和排序的含义不相同
D、建立索引后,不能更新有索引的字段内容
数据完整性
数据完整性是指保证数据正确的特性。
包括实体完整性、域完整性和参照完整性。
一、实体完整性
实体完整性是保证表中记录惟一的特性。
利用主关键字和候选关键字来保证实体完整性。
二、域完整性---字段有效性
域完整性就是属性的取值范围,也就是设置字段的有效性规则。
在“表设计器”中建立。
规则:
字段的取值范围(逻辑表达式)NOTANDOR
信息:
当输入的字段值违背规则时的提示信息(字符串表达式)
默认值:
指增加新记录时的值(随字段的类型而改变)
三、参照完整性
参照完整性是指当插入、删除或修改一个表中的数据时,通过参照引用相互关联的另一个表中的数据,来检查对表的数据操作是否正确。
要设置参照完整性必须先建立表之间的联系。
联系是指一个表中的某些记录和另外一个表中的某些记录相关。
联系的种类:
一对一联系:
主表中的一条记录和子表中的一条记录相关联。
主索引――主索引
一对多联系:
主表中的一条记录和子表中的多条记录相关联。
主索引――普通索引
多对多联系:
主表中的多条记录和子表中的多条记录相关联。
参照完整性的设置过程:
1、建立永久联系:
为一个建立主索引(父表),另一个表建立普通索引(子表),然后用鼠标将主索引标识拖动到普通索引标识上。
2、清理数据库
“清理数据库”就是指表中已被逻辑删除的记录不参与完整性的设置。
数据库――清理数据库
3、编辑参照完整性`
方法:
数据库――编辑参照完整性
右击――编辑参照完整性
参照完整性包括:
更新规则、删除规则和插入规则
更新规则:
当父表中的关键字值被修改时,应用哪条规则。
级联:
用新的关键字值更新子表中所有相关记录。
限制:
若子表中有相关记录则禁止修改父表中的关键字。
忽略:
不作完整性检查,可以随意更新父表中的关键字值。
删除规则:
当父表中的记录被删除时,如何处理子表中相关的记录。
级联:
自动删除子表中的所有相关记录。
限制:
若子表存在相关记录则禁止删除父表中的记录。
忽略:
不作完整性检查,可以随意删除父表中的记录。
插入规则:
当在子表中插入记录或更新记录时,如何进行完整性检查。
限制:
若父表不存在匹配的关键字值,则禁止插入子表记录。
忽略:
不作完整性检查,即可以随意插入子记录。
相关例题
1、在数据库环境中创建两
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VF 笔记