5第五讲_VFP数据库、数据表菜单操作及数据完整性约束

上传人:枫** 文档编号:570620493 上传时间:2024-08-05 格式:PPT 页数:63 大小:1.86MB
返回 下载 相关 举报
5第五讲_VFP数据库、数据表菜单操作及数据完整性约束_第1页
第1页 / 共63页
5第五讲_VFP数据库、数据表菜单操作及数据完整性约束_第2页
第2页 / 共63页
5第五讲_VFP数据库、数据表菜单操作及数据完整性约束_第3页
第3页 / 共63页
5第五讲_VFP数据库、数据表菜单操作及数据完整性约束_第4页
第4页 / 共63页
5第五讲_VFP数据库、数据表菜单操作及数据完整性约束_第5页
第5页 / 共63页
点击查看更多>>
资源描述

《5第五讲_VFP数据库、数据表菜单操作及数据完整性约束》由会员分享,可在线阅读,更多相关《5第五讲_VFP数据库、数据表菜单操作及数据完整性约束(63页珍藏版)》请在金锄头文库上搜索。

1、第五讲第五讲VFP数据库、数据表菜单操作数数据库、数据表菜单操作数据库及其操作据库及其操作林宏林宏学时:学时:2节节教学内容教学内容l5.1数据库操作数据库操作l5.2数据库表与自由表数据库表与自由表l5.3数据表操作数据表操作l5.4索引索引l5.5数据库中多表的使用数据库中多表的使用l5.6数据库表间关系数据库表间关系教学重点及目标教学重点及目标l教学重点教学重点数据库与数据表菜单操作数据库与数据表菜单操作索引的建立及使用索引的建立及使用多工作区的理解及使用多工作区的理解及使用数据库表间关系的建立及数据完整性约束的理解数据库表间关系的建立及数据完整性约束的理解l教学目标教学目标灵活应用菜单

2、操作数据库和数据表灵活应用菜单操作数据库和数据表掌握索引的建立及使用方法掌握索引的建立及使用方法掌握数据库完整性约束的建立及使用掌握数据库完整性约束的建立及使用5.1数据库操作数据库操作l5.1.1建立数据库建立数据库(1)通过)通过“新建新建”对话框建立数据库;对话框建立数据库;(2)在项目管理器中建立数据库;)在项目管理器中建立数据库;(3)使用交互命令建立数据库。)使用交互命令建立数据库。1.通过通过“新建新建”对话框建立数据库对话框建立数据库数据库保存对话框数据库保存对话框数据库设计器数据库设计器新建表、添加表、移去新建表、添加表、移去表、创建新的远程视图、表、创建新的远程视图、创建新

3、的本地视图、修创建新的本地视图、修改表、浏览表、编辑存改表、浏览表、编辑存储过程、连接储过程、连接9个按钮。个按钮。2.使用使用“项目管理器项目管理器”建立数据库建立数据库数据库的保存数据库的保存l当输入的当输入的“数据库名数据库名”的数据库已经存在时,显的数据库已经存在时,显示示“操作提示操作提示”对话框,对话框,单击单击“是(是(Y)”按钮,按钮,改写原有的数据库。改写原有的数据库。l若将系统环境参数若将系统环境参数SAFETY的值设置为的值设置为OFF,系统就不会提示用户确,系统就不会提示用户确认,直接改写原有的数据认,直接改写原有的数据库。库。 5.1.2打开数据库打开数据库l1通过通

4、过“文件文件”菜单打开数据库菜单打开数据库(1)文件文件打开(打开(O););(2)选择打开文件类型选择打开文件类型“数据库数据库(*.dbc)”;(3)选择要打开的数据库,或直接输入要打开的选择要打开的数据库,或直接输入要打开的数据库名;单击数据库名;单击“确定确定”按钮按钮l2使用项目管理器打开数据库使用项目管理器打开数据库在项目管理器的在项目管理器的“数据选项卡数据选项卡”中,选择要打开中,选择要打开的数据库,数据库将自动打开。的数据库,数据库将自动打开。5.2数据库表与自由表数据库表与自由表l数据库表数据库表数据库表是一个扩展名为数据库表是一个扩展名为.dbf的文件的文件如果表中有备注

5、或通用型字段则还会有一个扩展如果表中有备注或通用型字段则还会有一个扩展名为名为.fpt的文件。的文件。l创建数据库表创建数据库表使用项目管理器创建数据库表使用项目管理器创建数据库表使用数据库设计器创建数据库表使用数据库设计器创建数据库表定义一个表定义一个表(StudInfo)lStudInfo(学生信息表学生信息表)学生学生(学号,姓名,性别,出生日期,班级编号学号,姓名,性别,出生日期,班级编号)StudInfo(StudNo,StudName,StudSex,StudBirthDay,ClassID)使用项目管理器创建数据表使用项目管理器创建数据表使用数据库设计器创建数据表使用数据库设计器

6、创建数据表表设计器表设计器数据库对自由表的操数据库对自由表的操作作l数据库设计器中将自由表添加到数据库数据库设计器中将自由表添加到数据库l从数据库中移出数据库表成为自由表从数据库中移出数据库表成为自由表数据库设计器中将自由表添加到数据库数据库设计器中将自由表添加到数据库显示显示“移去操作移去操作”对话框对话框l“移去(移去(r)”,选定的数据库表从选定的数据库表从当前数据库中移去当前数据库中移去成为自由表。成为自由表。l“删除(删除(d)”,则选定的数据库表则选定的数据库表从数据库中移出,从数据库中移出,并从磁盘上删除该并从磁盘上删除该表表5.3数据表操作数据表操作l5.3.1浏览数据表记录浏

7、览数据表记录l5.3.2修改记录修改记录l5.3.3添加记录添加记录l5.3.4删除记录删除记录l5.3.5改变浏览的显示外观改变浏览的显示外观l5.3.6记录筛选记录筛选l5.3.7记录定位记录定位l5.3.8记录替换记录替换l5.3.9修改表结构修改表结构使用项目管理器浏览数据使用项目管理器浏览数据使用数据库设计器浏览数据使用数据库设计器浏览数据5.3.2修改记录修改记录5.3.3添加记录添加记录添加一条添加一条空白记录空白记录1.将其它数据库表中记录添将其它数据库表中记录添加到当前的数据库表中加到当前的数据库表中2.选择选择“追加记录追加记录(A)”命令项,显示命令项,显示“追加来源追加

8、来源”对话框,指定对话框,指定文件类型以及文件名,然文件类型以及文件名,然后按后按“确定确定”按钮按钮添加多条记录添加多条记录5.3.4删除记录删除记录逻辑删除记录逻辑删除记录在在“删除删除”对话框中,通过作用对话框中,通过作用范围(范围(S),可以指定对当前记录可以指定对当前记录开始以下若干个记录作逻辑删除;开始以下若干个记录作逻辑删除;通过通过For/While输入框,指定作逻输入框,指定作逻辑删除的条件,对表中满足条件辑删除的条件,对表中满足条件的所有记录作逻辑删除的所有记录作逻辑删除删除记录删除记录物理删除记录物理删除记录5.3.5改变浏览的显示外观改变浏览的显示外观表名字段名或标题拆

9、分条字段值元组1.改变显示表名改变显示表名2.改变显示的字段标题改变显示的字段标题3.改变浏览窗口中的字体改变浏览窗口中的字体4.改变字段的显示宽度改变字段的显示宽度5.改变字段的显示顺序改变字段的显示顺序按住鼠标左键拖动字段6.拆分浏览窗口拆分浏览窗口7.改变记录的显示次序改变记录的显示次序第一步:建立索引第二步:设置索引顺序5.3.6记录筛选记录筛选5.3.7记录定位记录定位5.3.8记录替换记录替换5.3.9修改表结构修改表结构l打开该数据库表设计器,进行以下修改表结构的操作。打开该数据库表设计器,进行以下修改表结构的操作。l1修改表中已有字段修改表中已有字段在数据库设计器的在数据库设计

10、器的“字段字段”选项卡中,显示了表中各个字段名称、选项卡中,显示了表中各个字段名称、类型和宽度的数据,可单击要修改的数据项,直接输入新的数值类型和宽度的数据,可单击要修改的数据项,直接输入新的数值即可。即可。l2增加新字段增加新字段将光标移到将光标移到“字段字段”选项卡中显示的最后一个字段后,输入新字选项卡中显示的最后一个字段后,输入新字段名、数据类型和宽度数据。就完成了一个新字段的增加操作。段名、数据类型和宽度数据。就完成了一个新字段的增加操作。l3插入新字段插入新字段将光标移到将光标移到“字段字段”选项卡中要插入新字段的位置,然后单击选项卡中要插入新字段的位置,然后单击“插入(插入(M)”

11、按钮,显示插入一个新字段的空行,在新字段的空按钮,显示插入一个新字段的空行,在新字段的空行中输入新字段名、数据类型和宽度数据。行中输入新字段名、数据类型和宽度数据。l4删除字段删除字段将光标定位到将光标定位到“字段字段”选项卡中要删除的字段上,单击选项卡中要删除的字段上,单击“删除删除(D)”按钮,该字段的定义数据从按钮,该字段的定义数据从“字段字段”选项卡中消失。选项卡中消失。修改表结构修改表结构5.4索引索引l5.4.1索引相关概念索引相关概念l1记录的物理顺序记录的物理顺序VisualFoxPro中表文件的记录号是按记录输入时的先后中表文件的记录号是按记录输入时的先后顺序给定的,这种顺序

12、称为记录的物理顺序。顺序给定的,这种顺序称为记录的物理顺序。l2记录的逻辑顺序记录的逻辑顺序VisualFoxPro中表的索引和一本书中的索引类似。书中中表的索引和一本书中的索引类似。书中的索引是一份页码的列表,指向书中的页号。的索引是一份页码的列表,指向书中的页号。表的索引按某种规则对记录进行逻辑排序,是一个记录号表的索引按某种规则对记录进行逻辑排序,是一个记录号的列表,指向待处理的记录,并确定了记录的处理顺序。的列表,指向待处理的记录,并确定了记录的处理顺序。3索引索引l索引不是重排记录的物理顺序生成一个新的表文索引不是重排记录的物理顺序生成一个新的表文件,而是选定一个关键字,根据关键字的

13、值对记件,而是选定一个关键字,根据关键字的值对记录进行逻辑排序。按关键字值的顺序记录此关键录进行逻辑排序。按关键字值的顺序记录此关键字值所在记录的记录号。字值所在记录的记录号。l当表文件打开时,若对应索引文件也已打开,表当表文件打开时,若对应索引文件也已打开,表中记录的输出顺序就是在索引文件中的顺序,称中记录的输出顺序就是在索引文件中的顺序,称为记录的逻辑顺序。为记录的逻辑顺序。l索引可以加速检索数据的速度。索引可以加速检索数据的速度。5.4.2索引的类型索引的类型l1主索引主索引数据库中的每一个表建立一个主索引,且一个表只能创建一个主索引。数据库中的每一个表建立一个主索引,且一个表只能创建一

14、个主索引。不能为自由表建立主索引不能为自由表建立主索引主关键字强调的主关键字强调的“不允许出现重复值不允许出现重复值”是指建立索引的字段值不允许重复是指建立索引的字段值不允许重复l2候选索引候选索引候选索引和主索引具有相同的特性,建立候选索引的字段可以看作是候选关候选索引和主索引具有相同的特性,建立候选索引的字段可以看作是候选关键字,键字,不允许出现重复值不允许出现重复值,一个表可以建立多个候选索引,一个表可以建立多个候选索引数据库表和自由表均可建立多个候选索引数据库表和自由表均可建立多个候选索引l3.唯一索引唯一索引“唯一性唯一性”是指是指索引项的唯一索引项的唯一,而,而不是字段值的唯一不是

15、字段值的唯一一个表可以建立多个唯一索引一个表可以建立多个唯一索引重复的索引字段值只有唯一一个值出现在索引项中重复的索引字段值只有唯一一个值出现在索引项中l4.普通索引普通索引决定记录的处理顺序,允许字段中出现重复值,并且索引项中也允许出现重决定记录的处理顺序,允许字段中出现重复值,并且索引项中也允许出现重复值复值一个表中可以建立多个普通索引一个表中可以建立多个普通索引5.4.3索引文件及其分类索引文件及其分类l1结构复合压缩索引文件结构复合压缩索引文件以以.CDX为扩展名为扩展名在打开表时自动打开,此文件在对表进行修改时,在打开表时自动打开,此文件在对表进行修改时,能自动更新。能自动更新。l2

16、.非结构复合压缩索引文件非结构复合压缩索引文件l3.独立索引文件独立索引文件5.4.4创建索引与索引的使用创建索引与索引的使用l用表设计器创建索引用表设计器创建索引l用命令方式创建索引使用索引用命令方式创建索引使用索引1设置普通索引设置普通索引l命令格式:命令格式:INDEXONTAGFORASCENDING|DESCENDINGl命令功能:创建一个复合索引文件。命令功能:创建一个复合索引文件。用表设计器创建索引用表设计器创建索引建立复合字段索引建立复合字段索引设置普通索引说明设置普通索引说明l(1)复合索引标识是一种可以包含任意数量的独复合索引标识是一种可以包含任意数量的独立标识(索引项)的

17、单个索引文件,每一个标识立标识(索引项)的单个索引文件,每一个标识都由其惟一标识名确定。都由其惟一标识名确定。l(2)FOR短语:用于建立有条件筛短语:用于建立有条件筛选索引。即只有符合选索引。即只有符合FOR条件的记录才会出现在条件的记录才会出现在索引文件关键字值列表中。索引文件关键字值列表中。l(3)ASCENDING|DESCENDING短语:用于指定索引短语:用于指定索引的排序方式,其中的排序方式,其中ASCENDING表示按升序排列,表示按升序排列,DESCENDING表示按降序排列。默认值为表示按降序排列。默认值为ASCENDING。索引索引l2设置唯一索引设置唯一索引l3建立非结

18、构索引文件建立非结构索引文件命令格式:命令格式:lINDEXONTAGOFFOR条件表达式条件表达式ASCENDING|DESCENDINGl说明:在非结构复合索引文件中可有多个标识。说明:在非结构复合索引文件中可有多个标识。4建立独立结构索引文件建立独立结构索引文件l命令格式:命令格式:INDEXONTOFOR条件表达式条件表达式ASCENDING|DESCENDING说明:用此命令建立独立结构索引文件后,该文说明:用此命令建立独立结构索引文件后,该文件自动处于打开状态并作为当前索引生效。件自动处于打开状态并作为当前索引生效。索引示例索引示例假设一个表包含职工号(假设一个表包含职工号(C,4

19、)和工资()和工资(N,4)两个字段,要求按工资升序、工资相同者按职工两个字段,要求按工资升序、工资相同者按职工号升序排列,建立索引文件使用的命令是(号升序排列,建立索引文件使用的命令是( )A)INDEXON工资工资/A,职工号,职工号/DTOINGB)SetINDEXON工资,职工号工资,职工号TOINGC)INDEXONStr(工资工资,4)+职工号职工号TOINGD)INDEXON工资工资/A,职工号,职工号/ATOING5.4.5使用索引使用索引l1菜单方式菜单方式l2指定多个字段对记录排序指定多个字段对记录排序l3使用不同索引类型的选择使用不同索引类型的选择l4命令方式使用索引命令

20、方式使用索引命令格式:命令格式:lSETINDEXTO|?ORDER|TAGOFASCENDING|DESCENDINGl命令功能:打开一个或多个索引文件。命令功能:打开一个或多个索引文件。命令使用说明命令使用说明l(1)用于指定要打开的一个或多个索引用于指定要打开的一个或多个索引文件。这些索引文件彼此之间用逗号隔开。在索引文件文件。这些索引文件彼此之间用逗号隔开。在索引文件列表中可以指定独立结构索引文件或非结构复合索引文列表中可以指定独立结构索引文件或非结构复合索引文件。另外,索引文件列表中指定第一个索引文件自动作件。另外,索引文件列表中指定第一个索引文件自动作为当前索引生效。但要注意的是,

21、如果在索引文件列表为当前索引生效。但要注意的是,如果在索引文件列表中指定的第一索引是非结构复合索引,那么若要作为当中指定的第一索引是非结构复合索引,那么若要作为当前索引生效还需要使用前索引生效还需要使用ORDER短语或短语或SETORDERTO命令。命令。l(2)?用于在执行)?用于在执行SETINDEXTO命令时弹出命令时弹出“打开打开”对话框以选择要打开的索引文件。对话框以选择要打开的索引文件。l(3)ORDER用于指定在索引文件列表中第几用于指定在索引文件列表中第几个索引文件作为当前索引生效。个索引文件作为当前索引生效。命令使用说明命令使用说明l(4)ORDER用于指定在用于指定在中哪一

22、个独立结构索引文件为当前索引。中哪一个独立结构索引文件为当前索引。l(5)ORDEROF用于用于指定在指定在中哪一个复合索引标识作为当前中哪一个复合索引标识作为当前索引。索引。l(6)ASCENDING|DESCENDING用于指定复合索引中用于指定复合索引中的某一索引标识是按照升序还是降序方式显示记录。的某一索引标识是按照升序还是降序方式显示记录。l(7)若)若SETINDEXTO后不带任何参数表示关闭索引文后不带任何参数表示关闭索引文件。件。l(8)在)在VisualFoxpro中如果用户已同时打开了某一个中如果用户已同时打开了某一个表的多个索引文件,但在任何一个时刻只能有一个索引表的多个

23、索引文件,但在任何一个时刻只能有一个索引文件作为当前索引文件生效。若要改变当前索引可以使文件作为当前索引文件生效。若要改变当前索引可以使用用SETORDERTO命令来设置当前索引。命令来设置当前索引。SETORDERTOl命令格式:命令格式:SETORDERTO|TAGOFASCENDING|DESCENDING功能:设置当前索引。功能:设置当前索引。5.5数据库中多表的使用数据库中多表的使用l5.5.1工作区工作区l1.工作区工作区工作区是工作区是VisualFoxPro在内存中开辟的能独立地使用命令在内存中开辟的能独立地使用命令对一个数据库文件进行操作的一块区域。对一个数据库文件进行操作的

24、一块区域。l2.工作区号与工作区别名工作区号与工作区别名VisualFoxPro6.0中最多能同时打开中最多能同时打开32767个工作区个工作区工作区的别名前十个为工作区的别名前十个为A、B、J,对于工作区,对于工作区11到到32767,自动指定的别名是,自动指定的别名是W11到到W32767。l当前工作区与当前表当前工作区与当前表当当VisualFoxPro系统启动后,自动选择系统启动后,自动选择1号工作区为当前号工作区为当前工作区。工作区。3用户定义的别名用户定义的别名l命令格式:命令格式:USE表文件名表文件名ALIAS别名别名AGAIN命令功能:打开一个表。命令功能:打开一个表。l说明

25、:说明:(1)若无)若无ALIAS短语,以表文件名作为别名。短语,以表文件名作为别名。(2)AGAIN短语,表示表文件可在多个工作区中短语,表示表文件可在多个工作区中同时被打开。同时被打开。5.5.2工作区选择工作区选择l1.命令方式命令方式SELECT工作区号工作区号|工作区别名工作区别名功能:选择某工作区为当前工作区。功能:选择某工作区为当前工作区。示例:示例:Select1UseStudInfoSelect2UseClassINFOSelect1Browsel2.菜单方式菜单方式5.6数据库表间关系数据库表间关系l5.6.1建立表间关系建立表间关系1表的关系表的关系l表的关系可分为一对一

26、关系、一对多关系和多对多表的关系可分为一对一关系、一对多关系和多对多关系。关系。2表间关系的类别表间关系的类别l在在VisualFoxPro中,表间关系分为临时表间关系中,表间关系分为临时表间关系和永久表间关系两种。和永久表间关系两种。5.6.2设置参照完整性设置参照完整性l(1)级联:不论何时更改父表中的某个字段,)级联:不论何时更改父表中的某个字段,VisualFoxPro都会自动更改所有相关子表记录都会自动更改所有相关子表记录中的对应值。中的对应值。l(2)限制:禁止更改父表中的主关键字段或候)限制:禁止更改父表中的主关键字段或候选关键字段中的值,这样在子表中就不会出现孤选关键字段中的值

27、,这样在子表中就不会出现孤立的记录。立的记录。l(3)忽略:即使在子表中有相关的记录,仍允)忽略:即使在子表中有相关的记录,仍允许更新父表中的记录。许更新父表中的记录。设置参照完整性设置参照完整性在建立永久关系前先建立索引5.6.3建立表间临时关系建立表间临时关系l命令方式建立关系命令方式建立关系命令格式:命令格式:lSETRELATIONTO关系表达式关系表达式1INTO工作区号工作区号1|别名别名1,关系表达式关系表达式2INTO工作区号工作区号2|别名别名2IN工作区号工作区号|别名别名ADDITIVE功能:建立两个打开的表之间的关系。功能:建立两个打开的表之间的关系。选项介绍选项介绍l

28、关系表达式关系表达式可以是:可以是:l(1)关键字表达式:指定在父表和子表之间建立关系的)关键字表达式:指定在父表和子表之间建立关系的关系表达式。子表必须按关键字建立索引,且索引必须关系表达式。子表必须按关键字建立索引,且索引必须是主索引。索引形式不限,可以是复合索引,也可以是是主索引。索引形式不限,可以是复合索引,也可以是普通索引。普通索引。l(2)数值表达式:两表按照记录号相联系,子表不必排)数值表达式:两表按照记录号相联系,子表不必排序或索引。当父表记录指针移动时,子表的记录指针指序或索引。当父表记录指针移动时,子表的记录指针指向与数值表达式值相匹配的记录上。例如,向与数值表达式值相匹配

29、的记录上。例如,SETRELATIONTO2*RECNO()()INTOYK,则父表的记,则父表的记录号为录号为1与别名为与别名为YK的子表记录号为的子表记录号为2的关系,父表记录的关系,父表记录号为号为3与与YK的记录号为的记录号为6的记录关系的记录关系。选项介绍选项介绍lINTO工作区号工作区号1|别名别名1:指定非当前工作区中的子表。:指定非当前工作区中的子表。l关系表达式关系表达式2INTO工作区号工作区号2|别名别名2:指定其他关:指定其他关系表达式和其他子表,建立另一个父表和子表之间的关系。在一条系表达式和其他子表,建立另一个父表和子表之间的关系。在一条SETRELEATION命令

30、中可以创建单个父表与多个子表之间的关系,命令中可以创建单个父表与多个子表之间的关系,各关系之间用逗号隔开。各关系之间用逗号隔开。lIN工作区号工作区号|别名别名:指定父表所在的工作区。:指定父表所在的工作区。lADDITIVE表示建立新关系时,当前工作区中先前建立的关系仍保留,表示建立新关系时,当前工作区中先前建立的关系仍保留,无此项则表示失效。无此项则表示失效。l说明:在建立关系之前,必须打开一个表(父表),而且还必须在说明:在建立关系之前,必须打开一个表(父表),而且还必须在另一个工作区内打开其他表(子表)。建立关系的各表之间通常有另一个工作区内打开其他表(子表)。建立关系的各表之间通常有一个相同的字段,即使字段名不同,数据类型必须相同。一个相同的字段,即使字段名不同,数据类型必须相同。l若要切断数据表间的关系,可用命令若要切断数据表间的关系,可用命令SETRELATIONTO。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号