[IT认证]第二章 VFP数据库及其操作.doc
《[IT认证]第二章 VFP数据库及其操作.doc》由会员分享,可在线阅读,更多相关《[IT认证]第二章 VFP数据库及其操作.doc(41页珍藏版)》请在三一办公上搜索。
1、第三章 VFP数据库及其操作(直接占考试笔试分值12至24分,一般是6到12道题)考试及要求熟练掌握的内容: 数据库和表的建立、修改与有效性检验:(1) 表结构的建立与修改;(2) 表记录的浏览、增加、删除与修改;(3) 创建数据库,向数据库添加或从数据库删除表;(4) 设定字段级规则和记录规则;(5) 表的索引:主索引、候选索引、普通索引、唯一索引。 多表操作:(1) 选择工作区;(2) 建立表之间关联:一对一的关联;一对多的关联。(3) 设置参照完整性;(4) 建立表间临时关联。2.1 VFP数据库及其建立2.1.1 基本概念在Visual FoxPro中,数据库是一个逻辑上的概念和手段,
2、通过一组系统文件将相互联系的数据库及其相关的数据库对象统一组织和管理。Visual FoxPro中把扩展名为dbf的文件称作数据库表。而数据库作为另外一类文件,主要用来管理相关表及视图的系统文件。建立Visual FoxPro数据库时,相应的数据库名称实际是扩展名为dbc的文件名,同时还会建立扩展名分别为dct的数据库备注文件和扩展名为dcx的数据索引文件。即建立一个数据库会同时产生三个文件相同扩展名不同的三个文件。数据库文件不能直接输入数据,我们主要用他来管理存储相关数据的表文件。2.1.2 建立数据库常用的三种方法:1. 在项目管理器中建立数据库2. 通过“新建”对话框建立数据库3. 使用
3、命令交互建立数据库可以先在VF的“工具”“选项”“文件位置”“默认目录”来修改当前的路径。例如:在命令窗口输入命令:CREATE database aa此时建立一个名为aa的数据库文件,如果需要打开进行编辑,可以在命令窗口中输入modify database aa。也可以直接在命令窗口中输入modify database aa,此时建立并打开数据库文件aa。关闭数据库:CLOSE DATABASE aa 关闭所有数据库:CLOSE ALL2.1.3 使用数据库对数据库操作首先要打开数据库,打开数据库常用的三种方法:1. 在项目管理器中打开数据库2. 通过“打开”对话框打开数据库3. 使用命令打
4、开数据库例如:使用 close all 关闭当前所有打开的文件。 输入open database aa,则打开aa数据库文件。或者输入open database ?,则提示打开提示对话框。输入close allopen database aa noupdatemodify database aa则以只读方式打开数据库文件,不能对其进行编辑。可以同时打开多个数据库,但只有一个当前数据库,指定当前数据库是通过SET DATABASE TO 数据库名命令来完成。如果此命令没有后面的数据库名则所有打开的数据库都不是当前数据库,但打开的数据库并没有关闭;另外在VFP的标准工具栏上有当前数据库选择的操作列
5、表;也可以用它来制定当前操作数据库。例:指定当前数据库SET DATABASE TO aa 或SET DATABASE TO bb关闭数据库的方法:利用项目管理器关闭,用CLOSE DATEBASE或CLOSE ALL关闭。2.1.4 修改数据库在Visual FoxPro中修改数据库实际是打开数据库设计器,用户可以利用数据库设计器来管理数据库对象(表和视图)。三种修改方法:1. 在项目管理器中打开数据库设计器2. 通过“打开”对话框打开数据库设计器3. 使用命令打开数据库设计器打开数据库设计器会自动打开该数据库。2.1.5 删除数据库两种删除方法:1. 在项目管理器中删除数据库 2. 用命令
6、删除数据库相关的环境设置命令:SET SAFETY ON/OFF例:SET SAFETY ONdelete database aa则弹出提示窗口:如果是:SET SAFETY offdelete database aa则不会弹出提示窗口,直接删除!2.2 建立数库据表数据库在含有表之前没有实际用途,数据库是用来管理相关的存放数据信息的数据库表及对标操作的视图对象的。2.2.1 在数据库中建立表在关系数据库中将关系也称作表,在FoxBASE和早期的FoxPro中称作数据库文件。在数据库中建立表最简单和直接的方法就是使用数据库设计器。(操作:先建立数据库设计器,再在数据库设计器窗口中添加表)创建过
7、程:1. 新建一个“外语系”的文件夹,用来保存数据库表文件。2. 在VF中创建一个名为“2012级”的数据库保存到“外语系”文件夹中。3. 用鼠标在数据库设计器中点击右键,点击“新建表”或“添加表”4. 点击“新建表”,在弹出的对话框中点击“新建表”5. 在弹出的对话框中输入表名,点击“保存”。6. 在弹出的表设计器中添加字段。7. 设置完字段参数后点击确认,档案表建立完成。8. 双击表头,可以对表进行浏览。9. 点击菜单“表”“追加新记录”或按快捷键“CTRL+Y”,可以添加记录。10. 双击“个人简历”或“才艺展示”也可以添加相应的内容。11. 空值和默认值的设置:如在表设计器中设置毕业成
8、绩允许为空且默认为“NULL”则表中追加新记录时“毕业成绩”默认值为“NULL”且允许为空值12. 对毕业成绩值的输入进行有效的限制,如范围在0-700分之间。可以在表设计器中选定毕业成绩字段,对其字段有效性规则进行设置:在字段有效性的规则中输入:毕业成绩=0 and 毕业成绩=700如果在档案表中将毕业成绩改为大于700的数字,则会弹出提示信息:还可以更改提示信息:在字段有效性的信息栏中输入需要弹出的信息内容,比如:“请输入0到700之间的数字”。(注意需要使用半角引号!)这时如果输入的数字不在0到700之间的话,会弹出的提示框为:建表在表设计器中涉及的一些基本内容: 1. 字段:表中的每一
9、列称为一个字段,表是由若干个字段(列)构成的。2. 字段名:关系的属性名或表的列名,一个表中的字段名不能有重复的。3. 字段类型和宽度:决定存储在字段中的值的数据类型并有宽度限制。4. 空值设置:是表中可以表示缺值或不确定值的一种表示。5. 字段有效值:定义表中字段值的取值范围即对字段值添加进行约束。6. 默认值:设置表中增加新记录时字段自动添加的数据值。7. 显示设置:定义字段显示的格式、输入的掩码和字段的标题。8. 字段注释:为每个字段添加注释信息。 在数据库被当前打开的情况下,在命令窗口中用CREATE TableName也可以建立数据库表。 数据库表建立后,打开及关闭表的方法:打开:可
10、以利用项目管理器打开、通过数据库设计器打开、通过打开对话框打开、用USE TableName命令打开。例如:USE 档案关闭:利用项目管理器关闭、用命令USE、CLOSE DATABASE、CLOSE ALL、CLEAR ALL都可以关闭表文件。2.2.2 修改表结构数据库表建立后可以用三种方法来修改数据库表的结构:1. 在项目管理器中修改2. 在数据库设计器中修改3. 用MODIFY STRUCTURE命令修改修改内容主要包括:对字段名、类型和宽度及有效规则(增加、删除及修改),索引的相关操作。2.3 表的基本操作建立表的目的是为了用它来存放数据、管理数据,这就涉及对表中数据记录的添加、删除
11、、修改、查看等操作。做这些操作前必须先打开表。2.3.1 使用浏览器操作表交互式(人机应答方式)工作方式下对表操作最简单、方便的方法就是使用BROWSE浏览器,打开浏览器的方法有多种,常用的方法有:1. 在项目管理器中打开表浏览器;2. 在数据库设计器中打开表浏览器; 3. 在命令方式下先打开表,然后用BROWSE命令打开表浏览器。例如,在默认目录下可以输入命令打开和浏览表:use 档案BROWSE在浏览器操作窗口中可以向表中追加记录、修改记录、删除记录(逻辑和物理删除)。2.3.2 增加记录的命令1. APPEND命令:在表的尾部增加记录; APPEND:命令执行后需要交互输入新增记录中的各
12、字段值APPEND BLANK:在表尾增加新的空白新记录2. INSERT命令:可以在当前记录处插入新记录INSERT:在当前记录后插入新记录并出现编辑窗口交互输入各字段值INSERT BEFOR:在当前记录前插入新记录并出现编辑窗口交互输入各字段值INSERT BLANK:在当前记录后插入空白记录INSERT BEFORE BLANK:在当前记录前插入空白记录注意:(1)如果表中设置了完整性约束,使用INSERT命令时,则会弹出提示框:此时需要删除完整性约束才能使用INSERT命令。(2)如果表上建立了主索引或候选索引则不能用以上命令插入记录。要用SQL语言中的INSERT命令插入。 2.3
13、.3 删除记录的命令1. 置删除标记(逻辑删除)的命令:DELETE范围FOR条件范围有四种:ALL、REST、RECORD n、NEXT nDelete 逻辑删除当前记录Delete all 逻辑删除所有记录Delete REST逻辑删除当前记录以下的所有记录Delete RECORD n逻辑删除指定的第N条记录Delete NEXT n 逻辑删除当前记录以下的N条记录Delete FOR 性别=”男” 逻辑删除性别为男的所有记录恢复记录(取消逻辑删除)的命令:RECALL范围FOR条件RECALL FOR 性别=”男” 恢复性别为男的所有记录2. 物理删除有删除标记的记录命令:PACK3.
14、 物理删除表中的全部记录命令:ZAP(删除表中的全部记录不删除表) 2.3.4 修改记录的命令1. 用EDIT或CHANGE命令交互式修改当前表的记录,进行编辑、修改操作。2. 用PEPLACE命令直接修改REPLACE范围字段1 WITH 表达式1字段2 WITH 表达式2FOR条件例:将表中所有学生年龄都加1REPLACE ALL 年龄 WITH 年龄+1操作:1. 打开数据库成绩表2. 在命令窗口中输入:REPLACE ALL 总分 WITH 数学+语文+外语REPLACE ALL 平均分 WITH (数学+语文+外语)/3即可以求出成绩表当中的总分和平均分。2.3.5 显示记录的命令显
15、示记录的命令有LIST和DISPLAY,区别仅在不使用条件时,LIST默认显示全部记录,DISPLAY默认显示当前记录。命令格式:1. LIST范围FIELDS字段名列表FOR条件OFFTO PRINTER PROMPTTO FILE 文件名例:1.LIST 或 LIST ALL 显示表的全部记录。 2. USE 档案list for 性别=女,则显示档案表中性别为“女”的全部记录。2. DISPLAY范围FIELDS字段名列表FOR条件OFFTO PRINTER PROMPTTO FILE 文件名DISPLAY:显示当前记录DISPLAY ALL:显示全部记录2.3.6 查询定位命令用于确定
16、当前表操作的当前记录。1. 用GOTO或GO命令直接定位,其命令格式:GOTO/GO 记录号、GOTO/GO TOP、GOTO/GO BOTTOM例:GOTO/GO 2 回车,点击表,则表指针移动到第2条记录。GOTO/GO TOP、GOTO/GO BOTTOM 表指针移动到表的顶部或底部。2. 用SKIP命令相对定位,其命令格式:SKIP正整数或负整数例如:SKIP或SKIP 1,回车:表指针跳到下一条记录。SKIP 2,回车: 表指针将跳到当前记录的下2条记录。SKIP -1,回车:表指针向上跳,指向上一条记录。3. 用LOCATE命令查找定位,其命令格式:LOCATE FOR 条件按条件
17、定位记录指针到满足条件第1条记录上,如果没有满足条件的记录则指向文件尾部。可以用CONTINUE继续查找下一个满足条件的记录,用FOUND()函数来判断是否找到。例如:LOCATE FOR 性别=“女”:则是查找定位记录指针到性别=“女”的第一条记录。如果要继续查找下一条性别=“女”的记录,则使用CONTINUE命令。判断是否找到符合条件的记录用FOUND()函数, 使用函数:?FOUND(),如果找到了则显示“T”,没找到显示“F”。2.4 索引按特定的顺序定位、查看或操作表中的记录,可以使用索引方便的按不同记录顺序处理表中数据。2.4.1 基本概念VisualFoxPro中索引是由指针构成
18、的文件,这些指针逻辑上按照索引关键字值进行排序;索引文件和表的dbf文件是分别存储的,并且不改变表中记录的物理顺序;VisualFoxPro中的索引分为主索引、候选索引、唯一索引和普通索引四种。1. 主索引 在表中指定字段或表达式中不允许出现重复值的索引(建立索引的字段不允许重复),可以起到主关键字的作用; 如字段已有重复值了主索引建立会出错; 一个表只能有一个主索引; 只有数据库表才可以建立主索引,自由表没有主索引。2. 候选索引 与主索引类似,表中建立字段或表达式不允许出现重复值,建立字段可以看作候选关键字; 如字段已有重复值了候选索引建立会出错; 一个表可以建立多个候选索引; 数据库表和
19、自由表都可以建立候选索引。3. 唯一索引是指索引项的唯一,表中索引字段或表达式可以有重复值,但在索引生效时除了排序外重复的索引项值只显示一个,自由表和数据库表都可以建立。4. 普通索引表中允许字段或表达式中出现重复值,并且索引项中也允许出现重复值。在一个表中可以建立多个普通索引,自由表和数据库表都可以建立。索引的共同特点都是排序(逻辑排序)。例如:SET ORDER TO 毕业成绩,则按照索引“毕业成绩”进行排序SET ORDER TO:取消索引排序,恢复原来记录。2.4.2 在表设计器中建立索引1.单项索引基于一个字段的索引;2.复合字段索引基于多个字段上的索引;例如:建立一个名为MX的符合
20、索引如下:复合索引包含了民族和性别的字段,则分别按照民族和性别的升序来进行排序,在命令窗口中输入:SET ORDER TO MX,则排序后的表结构如下:2.4.3 用命令建立索引从组织方式来讲共有三类索引:结构复合索引、非结构复合索引、非结构单索引。在表设计器中建立的索引通常都保存在与表名相同、后缀名为.CDX的索引文件中,都为结构复合索引。1. 用命令建立结构复合索引结构符合索引是多个索引可以创建在一个索引文件中,与表设计器中建立的索引是完全一样的,产生与表名相同扩展名为CDX的索引文件,其命令格式:INDEX ON 索引字段或索引表达式 TAG 索引名 ASCENDING|DESCENDI
21、NGUNIQUE|CANDIDATEADDITIVE例如:使用命令用“姓名”字段来建立结构符合索引:INDEX ON 姓名 TAG XM 或INDEX ON 姓名 TAG XM ASCE 都是表示建立升序的普通索引。INDEX ON 姓名 TAG XM DESC :表示建立降序的普通索引。默认状态下为升序,其中ASCE和DESC可以省写,只需取前面四个字母来表示。INDEX ON 姓名 TAG XM UNIQUE 表示建立的是唯一索引。INDEX ON 姓名 TAG XM CAND 表示建立的是候选索引。INDEX ON 姓名 TAG XM ADDI 表示在建立索引时,是否关闭以前的索引,并且
22、将建立的索引设置为当前索引。2. 用命令建立非结构复合索引非结构复合索引是多个索引可以创建在一个与表名不同的索引文件中,索引文件的扩展名是CDX。INDEX ON 索引字段或索引表达式 TAG 索引名 OF 索引文件名ASCENDING|DESCENDINGUNIQUE|CANDIDATEADDITIVE建立的索引信息被放到指定的索引文件中。索引文件的扩展名仍是CDX。例如:用字段姓名建立一个非结构符合索引:INDEX ON 姓名 TAG XM OF 档案索引 此时在数据库表中并没有看到此索引,但在外语系的文件夹中创建了一个与表名不同的索引文件,这个档案索引文件中可以存放多个索引。3. 用命令
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- IT认证 IT认证第二章 VFP数据库及其操作 IT 认证 第二 VFP 数据库 及其 操作
链接地址:https://www.31ppt.com/p-4657694.html