第三章VF数据库及其操作教案.doc

上传人:飞****2 文档编号:60226207 上传时间:2022-11-15 格式:DOC 页数:12 大小:83KB
返回 下载 相关 举报
第三章VF数据库及其操作教案.doc_第1页
第1页 / 共12页
第三章VF数据库及其操作教案.doc_第2页
第2页 / 共12页
点击查看更多>>
资源描述

《第三章VF数据库及其操作教案.doc》由会员分享,可在线阅读,更多相关《第三章VF数据库及其操作教案.doc(12页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、第三章 VF数据库及其操作一、创建数据库表:注:表分数据库表和自由表,其文件扩展名都为:.dbf。数据库表是指属于某个数据库的表,自由表是指不属于任何数据库的表。n打开项目管理器-数据库-表-新建;n使用新建命令或者使用Create命令建立数据库;1.方法:open database打开数据库create建立表。注:如果没有先用open database打开数据库,而是直接用create命令建立表也可以,因为它不包含有些在数据库中才能实现的功能,这时建立的表不是数据库中的表,而是自由表;新建的表处于打开处状态可以直接进行录入及修改表结构操作,如果以后进行操作:1.可以直接在盘符中找到打开;2.

2、在命令窗口中输入USE TableName(表名)单击“显示浏览”或者在命令行输入BROWSE LASE回车即可。二、数据库表的字段属性: 1、字段显示属性:n字段名 是字段的唯一标志,由1128个非空字符组成;n字段名 即关系的属性名或表的列名。一个表由若干列(字段)构成,每个列都必须有一个惟一的名字即字段名n字段名 可以是汉字或合法的西文标识符;注:自由表:2 自由表字段名最长为10个字符。3 数据库表的字段名最长为128个字符。4 字段名必须以字母或汉字开头。5 字段名可以由字母、汉字、数字和下划线组成。6 字段名中不能包含空格。注:字段类型决定了存储的数据类型,字段宽度决定了存储数据的

3、宽度和取值范围。字段的类型(字段变量)字段类型宽度实际定义宽度字段类型宽度实际定义宽度字符型C254自定义双精度(B)20位8数值型(N)20位8整型(I)10位4浮动型(F)20位8逻辑型(L)11日期型(D)88备注型(M)4不受限制日期时间型(D)1414通用型(G)4不受限制货币型(Y)20位(bit)8注:n备注型和通用型内容存放在扩展名为:.fpt文件中。n通用型可以存放图片等多媒体内容,而备注型不能存放图片等。n记住各字段类型及字母表示、宽度。注:NULL:空值表示字段或变量还没有确定值。三、设置字段的显示格式: 格式确定了一个字段在数据浏览窗口、表单或报表中的显示方式。可以在格

4、式文本框中输入所需要的格式码,常用的格式用。在当前的“工具”选项下进行设置;四、设置字段的有效性:规则:即字段有效性规则,用来指定该字段的值必须满足的条件,为逻辑表达式;信息:即违背字段有效性规则时的提示信息,为字符串表达式;默认值:即字段的默认值,可以减少数据输入的工作量,类型以字段的类型来确定。一、 对数据库表的操作:1 添加数据库表:一个数据库中可以包括一个或多个相关联的数据表,可以向数据库中加入任何已经建立的表,但这个表不能属于其他的数据库,因为同一个表在同一时间只能属于一个数据库。如果要把其他数据库中的表加入到一个新的数据库中,可以先把要加入的表从原来的数据库中移出。注:添加数据库表

5、的方法先打开数据库右击添加表选中要添加的表确定即可。2 删除数据表:在要删除的数据表上右击移去即可。如果单击删除,该表将从磁盘上删除。二、修改表结构:1、在项目管理器中进行修改;2、在数据库设计器中进行修改;3、使用命令进行修改:如果当前表不在数据库设计器中,则首先用USE命令打开要修改的表然后输入modify setructure(此命令后不能有任何参数,其功能是修改当前表的结构) 打开表设计器进行修改操作即可。 修改已有的字段:用户可以直接修改字段的名称、类型和宽度。 增加新字段:要在原来的字段后增加新的字段,可以直接将光标移动到增加新字段,然后输入新的字段名、字义类型和宽度;如果要在原来

6、的字段中间插入新的字段,则首先将光标定位在要插入新字段的位置,然后单击“插入”按钮,这时会插入一个新的字段,输入新的字段名、定义类型和宽度。 删除不用的字段:若要删除某个字段,首先将光标定位在要删除的字段上,然后单击“删除”按钮即可。三、对表的基本操作: 1、打开并游览表有多种方式:n在项目管理器中将数据库展开至表并选中要浏览的表单击浏览即可。n在数据库设计器中选择要操作的表从数据库中选择浏览。n在命令窗口中,首先用USE打开要操作的表输入BROWSE命令来浏览表;即可对表进行浏览、添加、删除和修改操作。2、浏览表的操作: A:下一记录:下箭头键; B:上一记录:上箭头键; C:下一页:Bag

7、eDown键; D:前一页:PageUP键; E:下一字段:Tab键; F:前一字段:Shift+Tab键;还可以使用四个方向键;3、用命令对表进行操作:修改表中的数据: A:追加记录命令格式:APPEND BLANKAPPEND:在表文件的尾部追加任意多少记录,并且进入交互式状态,等待用户输入数据.APPEND BLANK:在表文件尾部追加一条空白记录。 B:插入记录的命令格式:INSERT BEFOE BLANKINSERT:在当前记录的后面插入任意多少记录,并且进入交互式状态等待用户输入数据。INSERT BEFOR:在当前记录的后面插入任意多少记录,并且进入交互式状态等待用户输入数据。

8、INSERT BLANK:在当前记录的后面插入一条空白记录。INSERT BEFORE BLANK:在当前记录的前面插入一条空白记录。 C:删除记录:在VF中删除记录分为逻辑删除和物理删除两个步骤。逻辑删除是指给表文件中的记录打上一个删除标记(可以恢复),但表中记录仍然存在,物理删除是指将表文件中的数据彻底删除(不能恢复)。1 逻辑删除记录命令格式:DELETE 范围 | FOR ALL:表示所有DELETE:逻辑删除当前表中的当前记录一条。DELETE ALL:逻辑删除当前表中所有记录。DELETE FOR:逻辑删除当前表中满足条件的记录。Delete from 表名 where 条件例如:

9、逻辑删除当前表中职工编号为003的员工:DELETE FOR 职工编号=0032 物理删除记录命令:3 PACK:物理删除当前表中打上逻辑删除标记的所有记录。4 ZAP:物理删除当前表中所有的记录(不管是否打上逻辑删除标记,但表结构并没有删除)注:DELETE ALL和PACK两个命令集合等价于ZAP功能 D:恢复记录的删除:RECALL FOR +逻辑表达式: 如:将当前表中已经删除的女生记录恢复:RECALL FOR 性别=”女”1 修改记录命令格式: REPLACE WITH FOR修改全部记录的命令:REPLACE ALL WITH 1.修改面积为500的城市为贵阳2.修改仓库在武汉的

10、仓库号为WH33.把所有仓库的面积增加100注:没有FOR 和默认只替换当前记录一条。 如果有FOR和替换指定范围当中的满足条件的记录(有FOR没有时,默认范围是 ALL)例:将当前表中所有学生的年龄加2。 REPLACE ALL 年龄 WITH 年龄+22 显示记录命令:LIST和DISPLAY LIST:默认范围是所有记录。 当SET DELETED为ON时,LIST不显示带删除标记的记录。DISPLAY:默认显示当前记录。TO PRINTER,DISPLAY:是将结果定向输出到打印机;PROMPT:可以调整打印机的设置;TO FILE FILENAME:是将结果定向输出到指定的文件中。例

11、:显示XS表中的女生记录; USE XS 打开学生表 LIST 姓名,政治,数学 FOR 性别=”女” 即可显示女生的记录。3查询定位(或者叫记录指针定位)查询定位命令格式:LOCATE FOR 将记录指针定位到从上至下第一个满足条件的记录上。如果表中没有满足条件的记录时,记录指针则指到结束标识EOF。如需继续定位到下一个满足条件的记录上用CONTINUE继续查找。注CONTINUE不能单独使用,必须跟LOCATE FOR联用。 其格式为:LOCATE FOR 查询定位的表达式 DO WHILE FOUND() /处理 CONTINUE ENDDO注:当用LOCATE命令发现一个满足条件的记录

12、之后,可CONTINUE命令,从而在表的剩余部分寻找其他满足条件的记录,可重复的执行CONTINUE命令,直到到达表尾。例:在下列示例中,搜索所有女生的记录,然后显示总数。USE XSSTORE 0 TO sLOCATE FOR 性别=”女”Do WHILE FOUND() s= s+1 ?姓名 CONTINUEENDDO? “女生总数:”+LTRIM(STR(GNCOUNT)4 直接定位的命令:GOTO N|TOP|BOTTOM说明: N指表文件中的记录号,而不是表中的第几行; TOP:表中的首记录即第一行记录,而不是起始标识BOF。 BOTTOM:表中的尾记录即最后一条记录,而不是结束标识

13、EOF;例:USE XS 打开学生表 GO TOP 将记录指针定位在表的第一个记录上 GO BOTTOM:将记录指针定位在表的最后一个记录上。 相对定位命令格式:SKIP NN:表示将记录的指针从当前记录移动N行,正数往下移,负数往上移,但当遇到起始标识BOF或结束标识EOF时,则停止移动;例:USE XS 打开学生表; SKIP 1 ?RECNO() 显示2 查询定位命令格式:LOCATE FOR 索引:1 使记录按某种顺序排列,但不需要改变记录的物理位置。是由记录指针构成的文件,当在表文件中建立索引后表中记录的物理顺序(记录号)不会发生改变,只是逻辑顺序发生改变。也称为逻辑排序。2 索引文

14、件的扩展名为:.CDX 注:索引文件具有如下特点:3 同一个索引文件中可以有多种排序方式,有多个索引关键字。4 在对表进行添加、删除、更改操作时,索引文件自动维护。种类要求特点主索引是关键字才能建立主索引不允许出现重复值,只有数据库表才能建立,并且只能建立一个主索引候选索引是关键字才能建立主索引数据库表和自由表都能建立,每个表中可以建立多个候选索引惟一索引无要求保持与早期的版本兼容性,任何表任何字段都能建立,并且可以建立多个,建好后索引中的值是唯一的;它的“唯一性”是指索引项的唯一,而不是字段值的唯一。普通索引无要求允许字段中出现重复值,也允许索引项出现重复值,任何表任何字段都能建立,并且可以

15、建立多个 所以在VFP中,索引可分为主索引、候选索引、唯一索引和普通索引4种。任何一种索引均可以设置升序和降序。二、创建索引:分单项索引和复合字段索引。 1. 单项索引:(1) 打开表设计器在“字段”选项卡中选择要建立索引的字段后,在对应的索引的下拉列表框中选择无、升序或降序,就产生了单项普通索引,索引名与字段名相同,索引表达式就是对应的字段。(2) 如果要将索引定义为其他类型的索引,应选择表设计器中的“索引”选项卡,然后从“类型”下接列表框中选择索引的类型,这时可以根据需要选择要建的索引即可。2. 复合索引:(1) 在多个字段上的索引称做复合字段索引,其建立方法:(2) 在表设计器中的“索引

16、”下单击“插入”在表达式下输入所需要的索引名确定选择类型表达式默认确定即可。注:在一个表上可以建立多个普通索引,唯一索引和候选索引,但只能建立一个主索引。通常,主索引用于确定主关键字字段;候选索引用于不作为主关键字但字段值又必须唯一的字段;普通索引用于一般地提高查询速度;唯一索引用于一些特殊的程序设计。3.用命令方式建立索引: 其表达式为:INDEX ON 索引表达式 TAG 索引名 UNIQUE| CANDIDATE说明: 表达式:指定一个索引表达式,它可以是字段名,或包含字段名的表达式。 TAG 索引名:表示创建一个复合索引文件,TAG 索引名指为索引命名多个索引,可以创建在一个索引文件中

17、,这种索引称做结构复合索引,其文件名与相关的表同名,并且扩展名为.cdx。 UNIQUE:表示建立唯一索引。 CANDIDATE:表示建立候选索引。例:打开学生表,并创建一个名为“排名”的索引文件,该索引文件以“政治”字段的分类显示和处理记录。 USE XS INDEX ON 政治 tag 排名 CLEAR DISPLAY三、索引文件的种类:1 非结构单索引文件中只包含一种索引,这种索引文件的扩展名为.idx。2 非结构复合索引文件可以包含不同的索引标识的多个索引,也可以为一个表建立多个非结构复合索引文件,这种索引文件的扩展名为:.cdx3 结构复合索引文件可以包含不同的索引标识的多个索引,一

18、个表只能建立一个结构复合索引文件。这种索引文件夹扩展名为:.cdx。 注:结构复合索引文件具有随表打开时自动打开,在同一索引文件中能包含多个索引项,在添加、更改或者删除记录时自动维护索引等特性。四、使用索引的方法: 1、打开索引文件:注:与表名相同的结构索引文件在打开表时都能够自动打开,但是对于非结构索引必须在使用之前打开索引文件,使用SET INDEX TO 命令。 命令格式为:SET INDEX TO IndexFileList 例:USE XS SET INDEX TO 排名 ORDER 政治 2、设置当前索引: 命令格式为:SET ORDER TO 格式; 例:USE XS SET O

19、RDER TO 1 例:将结构索引文件中的“订购单号”设置为当前索引。 SET ORDER TO TAG 订购单号 或者SET ORDER TO 订购单号3、删除索引: (1)在表设计器中删除; (2)使用命令: DELETE TAG TagName1; TagName1指要删除的索引名; DELETE TAG ALL 指删除全部索引。数据完整性: 主要保证表中数据的正确性即三类:实体完整性、域完整性和参照完整性。一、实体完整性与主关键字:实体完整性是保证表记录的惟一性,即在一个表中不允许有重复的记录。在VF中是利用主索引或候选索引来实现。二、域完整性与约束规则:即设置字段值的取值范围。约束规

20、则又称为字段有效性规则,包括三个方面:n规则:是设置字段值的取值范围(逻辑表达式)n信息:是违背规则后的提示信息(字符表达式)n默认值:是表示默认的数据(与该字段值的数据类型保持一致)。三、参照完整性:跟表之间的联系有关,包含三个方面:更新、删除和插入。设置参照完整性之间必须建立两个表之间的永久联系(物理联系),父表建立主索引,子表建立普通索引。自由表:一、创建自由表的方法:n使用项目管理器:n使用菜单方式;n使用命令方法: (1)格式为:CREATE 表名 例:CREATE XS 创建学生自由表; (2)打开表的方法:n文件-打开:nUSE 表名 ALIAS IN AGAIN Exclusi

21、ve/Noupdate Shared 命令的功能:在指定的工作区打开表文件。 IN:指定要选择的工作区; ALIAS:为要打开的表指定一个别名; AGAIN:可以在某一工作区中打开其他要在工作区中打开的表; Exclusive:以独占方式打开表; Noupdate Shared:以只读方式打开表;(3)关闭表的方法: 如果已打开一个表,当打开别一个表文件时,系统将自动将先前打开的表关闭。 使用不带任何选项的USE命令,关闭当前已打开的表。 使用Close All命令:关闭所有类型的文件。 使用Close Database命令,关闭已打开的数据库文件、表文件、索引文件等。 使用Close Tab

22、le命令:关闭当前打开的所有表,不改变当前工作区。 使用QUIT命令,退出VFP系统,关闭所有打开的文件,返回操作系统。二、将自由表添加到数据库中:1 使用项目管理器添加自由表;2 使用数据库设计器添加自由表;3 使用窗口命令添加自由表; 命令格式为:ADD TABLE TableName命令说明:TableName指定添加到数据库中的表的名称 例:OPEN DATABASE “学生管理” EXCLUSIVE 以独占方式打开“学生管理”数据库 ADD TABLE XS 添加“学生”自由表;注:一个表只能属于一个数据库,当一个自由表添加到某个数据库后就不再是自由表了,所以不能把已经属于数据库的表

23、添加到当前数据库,否则会有出错提示。三、从数据库中移去表;n使用项目管理器;n使用数据库设计器;注:以上两种操作是从数据库中移去表,使数据库表成为自由表,所以应该单击“移去”按钮,如果单击“删除”按钮,则不仅从数据库中移去表,并且还将该表文件从磁盘上删除。从数据库移出表后,与之联系的所有主索引、默认值及有关的规则都随之消失。若移去的表在数据库中使用了长表名,移出数据库后长表名将不能再使用。 利用命令窗口方式移去表;1、命令格式为:REMOVE TABLE 表名|?DELETE RECYCLE命令说明:表名:指定要从当前数据库中移去的表:?显示“移去”对话框,从中可以选择一个要从当前数据库中移去

24、的表; DELETE:指定从数据库中移去该表,并从磁盘上删除; RECYCLE:表示把表放入回收站。 例:OPEN DATABASE 学生管理 EXCLUSIVE 打开“学生管理”数据库; REMOVE TABLE XS 移去学生表。四、更改表名:选择工作区:select 在指定的工作区打开表:use in 1、打开要更改的数据表所在的项目右击要更名的数据表重命名输入新名称确定即可。2、在表设计器中修改表名。五、多个表同时使用; 1、工作区的使用:VF中共有32767个工作区; 工作区号:1-32767 工作区别名:1-10别名为(A-J),11以后的别名是(W11-W32767) 2、选择当

25、前工作区的命令格式: SELECT |说明: A:当执行CLOSE ALL关闭所有工作区的所有文件,并返回到第一个工作区。 B:当执行SELECT 0时表示选择到空亲(没有表文件打开)最小(工作区号)工作区作为当前工作区。 C:当使用USE(文件名)IN (工作区号)这种格式时: 表示在指定的工作区打开指定表文件,但当前工作区并没有改变。 D:当使用USE(文件名)IN 0时表示在空闲最小工作区打开指定的表文件,但当前工作区仍然没有改变。六、表之间的联系:1 关联的特点是记录指针带动(当父表的记录指针移动时,子表中的记录指针跟随移动)。2 关联是一种临时性联系也称为逻辑联系。3 建立关联时在只需对子表建立普通索引,而父表可以不用建立主索引。七、排序: 是将记录按需要的顺序重新排列,产生一个新的数据库文件。实现从物理上对数据库的重新排列。索引可以使用户按照某种顺序浏览或查找表中的记录,这时的顺序是逻辑的,是通过索引关键字实现的。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com