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

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

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

1、第三章 VF数据库及其操作3.1VF数据库及其建立3.1.1基本概念扩展名:数据库表(简称表):.dbf 数据库:.dbc 数据库备注文件:.dct 程序:.prg项目:.pjx 查询:.qpr3.1.2创建数据库(1)在“项目管理器”中建立数据库知识链接:l 创建项目:文件-新建-文件类型-项目-新建文件-“创建”对话框-输入项目名称-保存l 未包含任何文件的项目称为空项目。当关闭一个空项目文件时,VF显示提示对话框。单击“删除”,系统将从磁盘上删除该空项目文件;单击“保持”按钮,系统将保存该空项目文件。操作步骤:打开项目管理器-单击“数据”选项卡中的“数据库”-单击“新建”-输入数据库名称

2、-保存(2)从“新建”对话框中建立数据库文件-新建-在“文件类型”中选择“数据库”-单击“新建文件”(3)用命令交互建立数据库l 建立数据库的命令是:Create database +数据库名称l 使用命令创建数据库后不打开数据库设计器,只是数据库处于打开状态l 打开数据库设计器的命令是:Modify database3.1.3使用数据库三种方法打开数据库:(1) 在项目管理器中打开数据库文件-打开-在“打开”对话框中的“文件类型”中找到“项目”选项-双击打开项目所在文件夹-双击要打开的项目(2) 从“打开”对话框中打开数据库文件-打开-在文件类型中选择“数据库”选项-双击要打开的数据库(3)

3、 用命令打开数据库Open database+文件名l VF在同一时刻可以打开多个数据库,但在同一时刻只有一个当前数据库,即所有作用于数据库的命令或者函数是对当前数据库而言。指定当前数据库的命令是:set database to+指定一个已经打开的数据库名称。如输入命令“set database to”,此时使得所有打开的数据库都不是当前数据库(所有打开的数据库都没有关闭,只是都不是当前数据库)。l 也可以使用标准工具栏中的数据库下拉列表来选择、指定当前数据库。3.1.4修改数据库在VF中修改数据库实际上是打开数据库设计器,用户可以在数据库设计器中完成各种数据库对象的建立、修改、删除等操作。(

4、1)打开数据库设计器的命令是:Modify database+要修改的数据库名l 打开数据库设计器之前并不要求先打开数据库,打开数据库设计器会自动打开数据库。(2)从项目管理器中打开数据库设计器(3)从“打开”对话框中打开数据库则会自动打开数据库设计器3.1.5删除数据库(1)从项目管理器中删除数据库:直接选择要删除的数据库,单击“移去”l 移去:从项目管理器中删除数据库,但并不从磁盘上删除相应的数据库文件;l 删除:从项目管理器中删除数据库,并从磁盘上删除相应的数据库文件;l 取消:取消当前操作,即不进行删除数据库的操作;l 注意:以上提到的数据库文件时.dbc文件。(2)删除数据库的命令是

5、:Delete database+文件名(要从磁盘上删除的数据库文件名),此时要删除的数据库必须是处于关闭状态。如果使用“?”,则会打开删除对话框请用户选择要删除的数据库文件。3.2建立数据库表3.2.1在数据库中建立表在数据库中将关系也称作表操作步骤:右击数据库新建表保存出现表设计器l 在数据库中有直接建立表的方法:使用open database命令打开数据库;使用creat 命令建立表。例如:在订货管理数据库中创建仓库表,则可以使用命令:Open database 订货管理Create 仓库3.2.2修改表结构注意:必须打开表设计器l 在VF中,表结构可以任意修改:可以增加、删除字段,可以

6、修改字段名、字段类型、字段的宽度,可以建立、修改、删除索引,可以建立、修改、删除有效性规则等。l 如果当前在数据库设计器中,可以右击要修改的表,选择修改,打开相应的表设计器。l 如果当前没有在数据库设计器中,则首先要用use命令打开要修改的表,然后使用modify structure 打开表设计器。(modify structure 命令没有参数,它表示修改当前表的结构)(1) 修改已有字段。直接修改字段的名称、类型和宽度。(2) 增加新字段。(3) 删除不用的字段。光标定位点击删除按钮。3.3表的基本操作3.3.1使用浏览器操作表(1)在项目管理器中将数据库展开至表,选择要操作的表,单击“浏

7、览”按钮。(2)在数据库设计器中选择要操作的表,然后从“数据库”菜单中选择“浏览”;或者右击要操作的表,选择“浏览”。(3)使用use 命令打开要操作的表,然后键入“browse”命令l 在浏览器中追加新记录,快捷方式为ctrl+Y;或者从“表”菜单中选择“追加新记录”。l 在浏览器中修改记录的值,只需要将光标定位在要修改的记录和字段值上,然后直接修改就可以了。l 在VF中删除记录有逻辑删除和物理删除两种。逻辑删除只是在记录旁做删除标记,必要时还可以去掉删除标记恢复记录;物理删除才是真正从表中删除记录。物理删除是在逻辑删除的基础上进行的,即物理删除是将那些有删除标记的记录真正删除。l Ctrl

8、+T:置删除标记和取消删除标记的命令。从“表”菜单中选择“切换删除标记”,也可以看到删除标记的变化l 从“表”菜单中选择“彻底删除”,可以物理删除有删除标记的记录。l 用ctrl+W或ESC键可以退出browse浏览器3.3.2增加记录的命令1.append 命令Append命令在表的尾部增加记录。两种格式:append或append blankl 使用append命令需要立刻交互输入新的记录值,一次可以连续输入多条新记录,然后用ctrl+W或ESC结束输入新记录。l Append blank 是在表的尾部增加一条空白记录,然后再用edit、change或browse命令交互输入(修改)空白记

9、录值。2.insert命令Insert命令可以在表的任意位置插入新的记录,命令格式是:Insertbeforeblank如果不指定before,则在当前记录之后插入一条新记录,否则在当前记录之前插入一条新记录。(第二条见课本106页)如果在表中建立了主索引或候选索引,则不能用以上的append或insert命令插入记录,必须用SQL的insert命令插入记录。3.3.3删除记录的命令1.置删除标记的命令(逻辑删除的命令):deletefor+逻辑表达式如果不用for短语指定逻辑条件,则只逻辑删除当前一条记录;如果用for短语指定了逻辑表达式,则逻辑删除使该逻辑表达式为真的所有记录。例如:逻辑删

10、除当前表中年龄为20的学生记录。Delete for 年龄=202恢复记录的命令:recallfor+ 逻辑表达式如果不用for短语指定逻辑条件,则只恢复当前一条记录(如果当前记录没有删除标记,则该命令什么都不做);如果用for短语指定了逻辑表达式,则逻辑恢复使该逻辑表达式为真的所有记录。3.物理删除有删除标记的记录物理删除有删除标记的记录的命令式pack,执行该命令后所有有删除标记的记录将从表中被物理地删除,并且不可能再恢复。4.物理删除表中所有记录使用zap命令可以物理删除表中的全部记录(不管是否有删除标记),该命令只是删除全部记录,并没有删除表,执行完该命令后表结构依然存在。3.3.4修

11、改记录的命令1.交互修改的edit和change命令默认编辑的是当前记录操作界面类似于append界面2.直接修改的replace命令Replacewithforl 没有all 则是对当前记录的修改l 例如:将当前表中所有学生的年龄加1Replace all 年龄 with 年龄+1l 对指定记录的修改:replace 成绩 with 成绩+5 for 姓名=”王五”3.3.5显示记录的命令显示记录的命令式list和display,它们的区别仅仅在于不使用条件时,list默认显示全部记录,而display默认显示当前记录。3.3.6查询定位命令将记录定位在某条某条记录上(1) 用goto命令直

12、接定位 Goto和go是等价的,命令格式为: Go+记录号/top/bottom(2) 用skip命令在确定当前记录位置时,可以用skip命令向前或向后移动若干条记录位置。Skip命令格式是 skipnRecord其中nRecord可以使正整数或负整数,默认是1.如果是正数则向后移动,如果是负数则向前移动。Skip是按照逻辑顺序定位,即使用索引时,是按索引项的顺序定位的。(3) 用locate命令定位Locate是按条件定位记录位置的命令,常用命令格式是:Locate for +查询或定位的表达式l 该命令执行后将记录指针定位在满足条件的第一条记录上,如果没有满足条件的记录则指针指向文件结束位

13、置。l 如果要使指针指向下一条满足条件的记录,使用continue命令。同样,如果没有满足条件的记录,则指针指向文件结束位置。l 使用found命令判别是否找到满足条件的记录,如果有满足条件的记录,该函数返回为真,否则返回假。Locate for 查询或定位的表达式Do while found ()ContinueEnddo3.4索引按照特定的顺序定位、查看或者操作表中的记录,可以使用索引。3.4.1基本概念1.主索引P109 建立主索引的字段可以看做是主关键字,一个表只能有一个主关键字,所以一个表只能创建一个主索引。2.候选索引 候选索引和主索引具有相同的特征,建立候选索引的字段可以看作是候

14、选关键字,所以一个表可以建立多个候选索引。候选索引和主索引一样要求字段值的惟一性并决定处理记录的顺序。在数据库表和自由表中均可为每个表建立多个候选索引。3.惟一索引 它的“惟一性”是指索引项的惟一,而不是字段值的惟一。一个表可以建立多个惟一索引。4.普通索引P109普通索引也可以决定记录的处理顺序,它不仅允许字段中出现重复值,并且索引项中也允许出现重复值。在一个表中可以建立多个普通索引。3.4.2在表设计器中建立索引包括建立单项索引和符合字段索引。(1) 建立单项索引l 在表设计器中的“字段”选项卡中,在定义字段时可以直接指定某些字段是否是索引项。用鼠标单击索引的下拉列表框,选择升序或降序或无

15、。如果选择升序或降序,则在对应的字段上建立了一个普通索引,索引名与字段名同名,索引表达式就是对应的字段。l 如果将索引类型定义为其他类型的索引,则须将界面切换到“索引”选项卡,然后从“类型”下拉框中选择索引的类型。l 索引是基于一个字段的,按照以上办法建立索引就可以了。(2) 建立符合字段索引按照多个字段进行索引,就是先按什么索引,再按什么索引l 在“索引”选项卡中单击“插入”。l 输入索引名l 选择索引类型l 单击表达式栏右侧按钮,打开表达式生成器l 输入索引表达式,单击确定在一个表上可以建立多个普通索引、多个惟一索引、多个候选索引,但只能建立一个主索引。3.4.3用命令建立索引建立索引的命

16、令是index,命令格式是:Index on 字段 to 文件 asce/desc建立的索引时一些临时的普通索引或惟一索引,临时索引不会随着表文件的打开而打开,退出VF系统后即完成临时索引的使命。Ascending/descending指明建立升序或降序索引,默认是升序的。与表明同名的.cdx索引是一种结构复合压缩索引。结构复合压缩索引的特点:l 打开表时自动打开l 在同一索引文件中能包含多个索引方案,或索引关键字l 在添加、更改或删除记录时自动维护索引3.4.4使用索引使用的前提条件是在表中已经设置了索引。在使用某个特定索引进行查询或需要记录按照某个特定索引顺序显示时,则必须用set ord

17、er命令指定索引。Set order命令格式是Set order to 索引序号或索引名 desc/asce 使用browse打开浏览器3.4.5使用索引快速定位Seek是利用索引快速定位的命令,命令格式是Seek 索引项或索引关键字的值order 索引序号或索引名asce/desc例,将记录定位在学号为的记录上Seek order 学号3.4.6删除索引使用前提是打开某一个表。Delete tag all 删除全部索引的命令格式Delete tag +索引名 删除指定索引的命令格式3.5数据完整性数据完整性一般包括实体完整性、域完整性和参照完整性等。在数据库中数据完整性是指保证数据正确的特性

18、。3.5.1实体完整性与主关键字实体完整性是保证表中记录唯一的特性,即在一个表中不允许有重复的记录。在VF中利用主关键字或候选关键字来保证表中的记录惟一,即保证实体惟一性。3.5.2域完整性与约束规则域约束规则也称作字段有效性规则建立字段有效性规则比较简单直接的方法是在表设计器中建立,在表设计器的“字段”选项卡中,有“规则”“信息”“默认值”三项。例如设置职工的工资有效性原则在1000至3000元之间,当输入职工工资不在此范围时给出出错提示,职工的默认工资值是1200.在“规则”框中输入表达式:工资=1000.and.=3000在“信息”框中输入表达式:工资输入错误,应该在10003000之间

19、。在“默认值”框中输入表达式:12003.5.3参照完整性与表之间的关联为建立参照完整性,必须首先建立表之间的联系。在建立参照完整性之前,必须先清理数据库,在数据库菜单中选择清理数据库。右击选择编辑参照完整性,打开参照完整性生成器。3.6自由表3.6.1数据库表与自由表自由表就是那些不属于任何数据库的表。建立自由表的方法:l 在项目管理器中,从“数据”选项卡选择“自由表”l 在确认当前没有打开的数据库时,选择文件新建 菜单l 在确认当前没有打开的数据库时,使用create 命令打开“表设计器”建立自由表3.6.2将自由表添加到数据库l 在项目管理器或数据库设计器中可以讲自由表添加到数据库中l

20、用add table 自由表表名/? 命令添加一个自由表到当前数据库.使用问号时,显示“打开”对话框选择要添加的自由表。3.6.3从数据库中移出表利用项目管理器或数据库设计器将数据库表移出数据库利用remove table 命令的命令格式是:Remove table 表名/?deleterecycle如果使用delete,则把所选的表从数据库中移出之外,还将其从磁盘上删除;如果使用recycle,则把所选表从数据库中移出后,放到了windows回收站,并不立即从磁盘上删除。3.7多个表的同时使用3.7.1多工作区的概念指定工作区的命令:Select+工作区号(一个大约等于0的数字)最大的工作区

21、号是32767.详细见课本P1213.7.2使用不同工作区的表详见课本P121下3.7.3表之间的关联命令格式:set relation to+建立临时联系的索引关键字当临时联系不再需要时可以取消,命令格式:set relation to 取消当前表到所有表的临时联系如果仅是取消某个具体的临时联系,使用命令:set relation off into +工作区号/表的别名例题:通过“学号”索引建立当前表(学生)和成绩表之间的临时联系Open database 学生管理Use 学生 in 1 order 学号Use 成绩 in 2 order 学号Set relation to 学号 into 成绩3.8排序物理排序的命令式sort,格式如下:Sort to +排序后的表名 on +排序的字段例如:sort to 新表名on 字段(1) use 新成绩(2) browse(3) sort to 新成绩表 on 成绩 desc

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

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

本站为文档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