VF数据库基础操作课件_第1页
VF数据库基础操作课件_第2页
VF数据库基础操作课件_第3页
VF数据库基础操作课件_第4页
VF数据库基础操作课件_第5页
已阅读5页,还剩107页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第4章VisualFoxPro数据库及其操作1.第4章VisualFoxPro数据库及其操作1.本章要点VisualFoxPro数据库的基本概念以及对数据库的基本操作建立数据库表,数据库表中的字段属性,对数据库表的操作对数据库表中的记录进行基本操作索引的概念、种类、如何建立索引、索引文件的种类实体完整性、域完整性、建立参照完整性建立自由表、数据库表与自由表的关系2.本章要点VisualFoxPro数据库的基本概念以及对数据本章要点(续)多个表同时使用如何建立排序3.本章要点(续)多个表同时使用3.4.1VisualFoxPro数据库及其建立4.4.1VisualFoxPro数据库及其建立4.4.1.1

基本概念1.数据库定义:数据库是一个逻辑上的概念和手段,通过一组系统文件将相互关联的数据库表及其相关的数据库对象统一组织和管理。在VisualFoxPro应该把dbf的数据库文件称作数据库表,简称表,而不再称作数据库或数据库文件。建立数据库后,用户可以在磁盘上看到文件名相同,但扩展名分别为dbc、dct和dcx的三个文件。5.4.1.1基本概念1.数据库5.4.1.2建立数据库1.常用方法使用项目管理器中建立数据库使用“新建”对话框建立数据库使用命令方式建立数据库命令格式:CREATEDATABASE数据库文件扩展名.dbc可以缺省,由系统默认。如果不指定数据库名称或使用问号都会弹出创建对话框请用户输入数据库名称。6.4.1.2建立数据库1.常用方法6.4.1.3打开数据库1.常用方法在“项目管理器”中打开数据库通过“打开”对话框打开数据库使用命令方式打开数据库命令格式:OPENDATABASE7.4.1.3打开数据库1.常用方法7.4.1.4添加数据库1.方法在项目管理器中单击“数据”选项,然后单击“添加”按钮,选择所需的数据库后,单击“确定”按钮,可以看到在项目管理器的数据项下多了一个所添加的数据库。8.4.1.4添加数据库1.方法8.4.1.5修改数据库1.打开数据库设计器常用方式:从项目管理器中打开数据库设计器用“打开”对话框打开数据库设计器选择“文件”菜单中的“打开”命令调出对话框,选择数据库名,单击“确定”即可打开数据库设计器。使用命令方式打开数据库设计器命令格式:MODIFYDATABASE2.在数据库设计器中修改设计器9.4.1.5修改数据库1.打开数据库设计器9.4.1.6删除数据库1.常用方法使用项目管理器删除数据库使用命令方式删除数据库命令格式:DELETEDATABASEDELETETABLES用于在删除数据库的同时从磁盘上删除该数据库所含的表等。10.4.1.6删除数据库1.常用方法10.4.1.7关闭数据库1.常用方法直接单击数据库设计器右上角的“关闭”按钮或者关闭数据库窗口,关闭数据库。CLOSEDATABASES[ALL]命令:其中ALL用于关闭所有打开的数据库以及数据库中的表、自由表、索引等。11.4.1.7关闭数据库1.常用方法11.4.2建立数据库表12.4.2建立数据库表12.4.2.1在数据库中建立表1.建立数据库表方法:使用项目管理器建立数据库表使用“新建”或CREATE命令建立数据库新建立的表处于打开状态,此时可以直接进行录入及修改表结构等操作。如果以后再对表进行操作,应先使用USE命令打开表13.4.2.1在数据库中建立表1.建立数据库表13.4.2.2数据库表的字段属性1.字段显示属性字段名规则字段名是字段的惟一标志,由1~128个非空字符组成(自由表字段名长度不能超过10个字符。自由表字段名最长为10个字符。数据库表字段名最长为128个字符。字段名必须以字母或汉字开头。字段名可以由字母、汉字、数字和下划线组成。字段名中不能包含空格。14.4.2.2数据库表的字段属性1.字段显示属性14.字段类型类型用途宽度限定存储字节字符型存储字符序列≤254个字符实际定义宽度数值型存储各种数值(整数)≤20位8逻辑型存储真和假=11日期型存储年、月、日=88日期时间型存储年、月、日、时、分、秒=1414货币型存储币值≤20位(bit)8整数型存储整数≤10位4浮点型存储整数和带小数位的数≤20位8双精度型存储整数和带超长小数位的数≤20位8备注型存储超常的字符(>254个)=4不受限制二进制字符型存储二进制数据实际定义宽度二进制备注型存储超长二进制数据=4不受限制通用型标记OLE=4不受限制表4.1VisualFoxPro字段类型15.字段类型类型用途宽度限定存储字节字符型存储字符序列≤254个设置字段的显示格式A:只允许字母和汉字,不允许空格或标点符号。D:使用当前的SETDATE格式。E:以英国日期格式编辑日期型数据。K:当光标移动到文本框上时,选定整个文本框。L:在文本框中显示当前导零,而不是空格符号。M:允许多个预设置的选择项。R:显示文本框的格式掩码,掩码字符并不存储在控制源中。T:删除输入字段前导空格和结尾空格。!:把小写字母转换为大写字母。$:显示货币符号,用于数值型数据或货币型数据。^:使用科学记数法显示数值型数据,只用于数值型数据。16.16.设置输入掩码X:可以输入任何字符。9:可以输入数字和正负符号。#:可以输入数字、空格和正负符号。$:在固定位置上显示货币符号。*:在值的左侧显示星号。.:点分隔符指定数值的小数点位置。,:用逗号分隔小数点左边的整数部分。$$:在微调控制或文本框中,货币符号显示时不与数字分开。17.17.2.设置字段的有效性设置字段的有效性规则和消息在创建数据库表时,应该考虑输入的数据能否有一个规则来判断是否符合实际要求。如果输入的数据通过字段规则的验证,则用户可以继续输入数据,否则将产生警告信息,要求用户重新输入。设置字段的默认值字段默认值是指在向数据表中添加新的记录时,该字段可以是预先准备好的数值或字符串,不需输入。默认值可以是除了通用型以外的任何数据类型,如果该字段允许使用空值,则可以设置该字段的默认值为.NULL。18.2.设置字段的有效性18.3.设置记录的有效性规则设置字段的有效性规则和消息记录有效性规则属于表的有效性规则,它可以控制用户输入到记录中的信息类型。4.表的触发器定义:触发器是针对数据表的表达式,当表中的任何记录被指定的操作命令修改时,触发器被激活。种类:插入触发器19.3.设置记录的有效性规则19.每次向表中插入或追加记录时触发该规则。更新触发器每次向表中修改记录时触发该规则。删除触发器每次向表中删除记录时触发该规则。触发器的返回值为.T.或.F.。如果为.T.,则允许执行相应的操作(插入记录、更新记录、删除记录),否则不允许执行相应的操作。5.使用长表名和注释设置数据库表的长表名,可以在数据库的“表设计器”对话框中的“表”选项卡中的“表名”文本框中输入长表名。表注释是表的说明信息。当表的文件名和长表名都不能完全说明表的含义时,可以设置表的注释。20.20.4.2.3数据库表的操作1.添加数据表一个数据库中可以包括一个或多个相关联的数据表。可以向数据库中加入任何已经建立的表,但这个表不能属于其他的数据库,因为同一个表在同一时间只能属于一个数据库。如果要把其他数据库中的表加入到一个新的数据库中,可以先把要加入的表从原来的数据库中移出。2.删除数据表数据库删除数据表,和添加数据表的操作方法类似。21.4.2.3数据库表的操作1.添加数据表21.4.2.4修改表结构1.方法:在“项目管理器”中修改表结构在“数据库设计器”中修改表结构使用命令修改表结构如果当前不在数据库设计器中,则首先要用USE命令打开要修改的表,然后使用命令方式MODIFYSTRUCTURE打开表设计器。22.4.2.4修改表结构1.方法:22.4.3表的基本操作23.4.3表的基本操作23.4.3.1使用浏览器操作1.打开浏览器方法:在项目管理器中将数据库展开至表,并且选择要操作的表,然后单击“浏览”命令按钮即可。在数据库设计器中选择要操作的表,然后从“数据库”菜单中选择“浏览”,或者对要操作的表单击鼠标右键,然后从快捷菜单中选择“浏览”。在命令窗口中,用USE命令打开要操作的表,然后输入BROWSE命令来浏览表。24.4.3.1使用浏览器操作1.打开浏览器24.2.浏览操作下一记录:下箭头键前一记录:上箭头键下一页:PageDown键前一页:PageUp键下一字段:Tab键前一字段:Shift+Tab键可用鼠标上、下、左、右滚动翻页和定位记录25.2.浏览操作25.4.3.2增加记录的命令1.APPEND命令定义:APPEND命令是在表的尾部增加一个或多个新记录。2.INSERT命令定义:INSERT命令可以在表的任意位置插入新的记录。26.4.3.2增加记录的命令1.APPEND命令26.4.3.3删除记录的命令1.逻辑删除命令格式:DELETE[FOR<逻辑表达式>]2.恢复记录的命令命令格式:RECALL[FOR<逻辑表达式>]3.物理删除有删除标记的记录命令格式:PACK[MEMO][DBF]27.4.3.3删除记录的命令1.逻辑删除27.4.物理删除表中的全部记录命令:ZAP物理删除表中的全部记录,不管是否有删除标记。该命令只是删除全部记录,并不删除表,执行完该命令后表结构依然存在。28.4.物理删除表中的全部记录28.4.3.4修改记录的命令1.EDIT或CHANGE命令交互修改这两个命令均用于交互式地对当前表记录进行编辑、修改,操作界面类似于APPEND界面。2.REPLACE命令直接修改使用REPLACE命令直接用指定表达式或值来修改记录。29.4.3.4修改记录的命令1.EDIT或CHANGE命令交互4.3.5显示记录命令1.LIST/DISPLAY命令LIST的默认范围是所有记录。信息充满VisualFoxPro主窗口或用户自定义窗口以后,LIST不给提示,继续显示。当SETDELETED为ON时,LIST不显示带删除标记的记录。命令格式:LIST/DISPLAY[[FIELDS]Fiedlist][FORlExpression1][OFF][TOPRINTER[PROMPT]|TOFILEFileName]30.4.3.5显示记录命令1.LIST/DISPLAY命令34.3.6查询定位命令1.用GO、GOTO命令直接定位2.SKIP命令定义:将记录指针向前或向后相对移动若干条记录。相对定位与当前记录有关,它是把记录指针从当前位置相对移动。3.用LOCATE命令定位定义:LOCATE是按条件定位记录位置的命令。31.4.3.6查询定位命令1.用GO、GOTO命令直接定位314.4索引32.4.4索引32.4.4.1索引的概念1.定义:VFP索引是指由指针构成的文件,这些指针逻辑上按照索引关键字的值进行排序。2.分类:主索引定义:主索引是一种设定为主关键字的索引,其内容在一个表中具有唯一性,不允许出现重复值。它强调的“不允许出现重复值”是指建立主索引的字段值不允许重复。如果在任何已含有的重复数据的字段中建立主索引,VFP将产生错误信息,如果一定要在这样的字段上建立主索引,则必须首先删除重复的字段值。33.4.4.1索引的概念1.定义:33.候选索引定义:候选索引和主索引一样,要求字段值的唯一性,并且决定了处理记录的顺序。建立候选索引的字段可以看作是候选关键字,所以一个表可以建立多个候选索引。唯一索引定义:唯一索引的“唯一性”是指允许表中索引项的唯一,而不是字段值的唯一。在数据库表和自由表中均可为一个表建立多个唯一索引。34.34.普通索引定义:普通索引可以决定记录的处理顺序,它不仅允许字段中出现重复值,并且也允许索引项中出现重复值。在数据库表和自由表中均可为一个表建立多个普通索引。35.35.4.4.2在表设计器中建立索引1.单项索引2.复合字段索引定义:在多个字段上的索引称做复合字段索引。2.索引文件的种类非结构单索引文件非结构复合索引文件结构复合索引文件36.4.4.2在表设计器中建立索引1.单项索引36.4.4.3利用命令窗口方式建立索引1.命令:INDEXONeExpressionTOIDXFileName|TAGTagName[OFCDXFileName][FOR lExpresssion][COMPACT][ASCENDING|DESCENDING][UNIQUE|CANDIDATE][ADDITIVE]2.说明:ASCENDING|DESCENDING表示建立升序或降序索引,默认为升序。UNIQUE表示建立唯一索引。CANDIDATE表示建立候选索引。ADDITIVE与建立索引本身无关,表示现在建立索引时是否关闭以前的索引,默认是关闭已经使用的索引。37.4.4.3利用命令窗口方式建立索引1.命令:37.4.4.4使用索引1.打开索引文件命令格式:SETINDEXTO2.设置当前索引命令格式:SETORDERTO3.使用索引快速定位命令:SEEK38.4.4.4使用索引1.打开索引文件38.4.删除索引

格式1:DELETETAGTagName1[OFCDXFileName1],[TagName2[OFCDXFileName2]]…格式2:DELETETAGALL[OFCDXFileName]说明:TagName1[OFCDXFileName1]指定要从复合索引文件中删除的标识。ALL[OFCDXFileName]指定从复合索引文件中删除所有标识。39.4.删除索引39.4.5数据完整性40.4.5数据完整性40.4.5.1实体完整性与主关键字1.实体唯一性定义:在VFP中利用主关键字和候选索引字来保证表中记录的惟一性,即实体惟一性。主关键字称为主索引,候选关键字称为候选索引,两者作用相同。在VFP中将主关键字称为主索引,将候选关键字称为候选索引。建立主索引和候选索引就能够确保记录的唯一性。41.4.5.1实体完整性与主关键字1.实体唯一性41.4.5.2域完整性与约束规则1.域完整性定义:通过限定字段的取值类型和取值范围来保证域完整性,还可以进一步通过域约束规则来保证域完整性。域约束规则也称作字段有效性规则,用于检验输入数据的正确性。建立字段有效性规则通常在“表设计器”中进行,“字段”选项卡中定义字段有效性规则的项目有规则、信息和默认值3项。42.4.5.2域完整性与约束规则1.域完整性42.4.5.3参照完整性与表之间的关联1.建立参照完整性步骤:建立表之间的“永久联系”。设置参照完整性约束。建立了参照完整性,将对相关表做出限制:当主表中没有相关记录时,该记录不得追加到相关子表中。当主表的关键字段值改变导致相关子表中出现不相关记录时,在主表中不允许这样改变。当主表中某条记录在相关表中有相关记录时,则该主表中的记录不允许删除。43.4.5.3参照完整性与表之间的关联1.建立参照完整性43.2.“参照完整性生成器”中单选按钮级联:

在相关的子表中反映父表中的主关键字或候选关键字的更改,如果选择该按钮,VFP会自动更改、删除和插入所有相关子表记录的连接字段值。限制:

如果子表有相关记录,则禁止更改父表中相关记录的主关键字或候选关键字字段的值,或者禁止删除父表中关联的记录。忽略:

不作参照完整性检查,即仍允许更改、删除或插入父表中的记录。44.2.“参照完整性生成器”中单选按钮44.4.6自由表45.4.6自由表45.4.6.1数据库表与自由表1.创建自由表方法:使用项目管理器创建自由表利用菜单方式创建自由表利用命令窗口创建自由表2.表的打开使用USE命令方式使用“文件”菜单中的“打开”项,进入打开对话框,打开相应的表。46.4.6.1数据库表与自由表1.创建自由表46.3.表的关闭方法:使用不带任何选项的USE命令,关闭当前已打开的表。使用CloseAll命令,关闭所有类型的文件。使用CloseDatabases命令,关闭已打开的数据库文件、表文件、索引文件等。使用CloseTable命令,关闭当前打开的所有表,不改变当前工作区。使用QUIT命令,退出VFP系统,并关闭所有打开的文件,返回操作系统。47.3.表的关闭47.4.6.2将自由表添加到数据库中1.方法:使用项目管理器添加自由表使用数据库设计器添加自由表利用窗口命令添加自由表ADDTABLE一个表只能属于一个数据库,当一个自由表添加到某个数据库后就不再是自由表了,所以不能把已经属于某个数据库的表添加到当前数据库,否则会有出错提示。48.4.6.2将自由表添加到数据库中1.方法:48.4.6.3从数据库中移出表1.方法:使用项目管理器移出表使用数据库设计器移出表利用命令窗口方式移去表命令格式:REMOVETABLE49.4.6.3从数据库中移出表1.方法:49.4.6.4更改数据表名1.方法:打开要更改的数据表所在的项目,在项目管理器中右击要更名的数据表。从弹出的快捷菜单中选择“重命名”命令,在重命名文件中输入要修改的文件名示。50.4.6.4更改数据表名1.方法:50.4.7多个表的同时使用51.4.7多个表的同时使用51.4.7.1多工作区的概念1.多工作区如果在同一时刻需要打开多个表,则只需要在不同的工作区中打开不同的表。系统默认的总是在第1个工作区中工作,如果没有指定工作区,实际是都是在第1个工作区打开表和操作表。2.利用命令窗口选择工作区命令格式:SELECTnWorkAreca|cTabeleAlias52.4.7.1多工作区的概念1.多工作区52.4.7.2使用不同工作区的表1.不同工作区VisualFoxPro也允许利用IN命令在一个工作区内使用另一个工作区的表。直接利用表名或表的别名引用另一个表中的数据,只需在别名后加上点号分隔符“.”或“﹣>”操作符,然后再接字段名即可。53.4.7.2使用不同工作区的表1.不同工作区53.4.7.3表之间的关联1.表间的联系方式表间字段联系方式有3种类型:一对一关系、一对多关系、多对多关系。通常在建立数据库时,建立一个“纽带表”,将多对多的关系分解成为两个一对多关系表。2.建立临时关联命令格式:SETRELATIONTO……INTO……3.取消临时关联命令格式:SETRELATIONOFFINTO54.4.7.3表之间的关联1.表间的联系方式54.4.8排序55.4.8排序55.1.定义排序是将记录按需要的顺序重新排列,产生一个新的数据库文件,实现从物理上对数据库的重新排列。2.物理排序命令格式:SORTTOTableNameON……56.1.定义56.第4章VisualFoxPro数据库及其操作57.第4章VisualFoxPro数据库及其操作1.本章要点VisualFoxPro数据库的基本概念以及对数据库的基本操作建立数据库表,数据库表中的字段属性,对数据库表的操作对数据库表中的记录进行基本操作索引的概念、种类、如何建立索引、索引文件的种类实体完整性、域完整性、建立参照完整性建立自由表、数据库表与自由表的关系58.本章要点VisualFoxPro数据库的基本概念以及对数据本章要点(续)多个表同时使用如何建立排序59.本章要点(续)多个表同时使用3.4.1VisualFoxPro数据库及其建立60.4.1VisualFoxPro数据库及其建立4.4.1.1

基本概念1.数据库定义:数据库是一个逻辑上的概念和手段,通过一组系统文件将相互关联的数据库表及其相关的数据库对象统一组织和管理。在VisualFoxPro应该把dbf的数据库文件称作数据库表,简称表,而不再称作数据库或数据库文件。建立数据库后,用户可以在磁盘上看到文件名相同,但扩展名分别为dbc、dct和dcx的三个文件。61.4.1.1基本概念1.数据库5.4.1.2建立数据库1.常用方法使用项目管理器中建立数据库使用“新建”对话框建立数据库使用命令方式建立数据库命令格式:CREATEDATABASE数据库文件扩展名.dbc可以缺省,由系统默认。如果不指定数据库名称或使用问号都会弹出创建对话框请用户输入数据库名称。62.4.1.2建立数据库1.常用方法6.4.1.3打开数据库1.常用方法在“项目管理器”中打开数据库通过“打开”对话框打开数据库使用命令方式打开数据库命令格式:OPENDATABASE63.4.1.3打开数据库1.常用方法7.4.1.4添加数据库1.方法在项目管理器中单击“数据”选项,然后单击“添加”按钮,选择所需的数据库后,单击“确定”按钮,可以看到在项目管理器的数据项下多了一个所添加的数据库。64.4.1.4添加数据库1.方法8.4.1.5修改数据库1.打开数据库设计器常用方式:从项目管理器中打开数据库设计器用“打开”对话框打开数据库设计器选择“文件”菜单中的“打开”命令调出对话框,选择数据库名,单击“确定”即可打开数据库设计器。使用命令方式打开数据库设计器命令格式:MODIFYDATABASE2.在数据库设计器中修改设计器65.4.1.5修改数据库1.打开数据库设计器9.4.1.6删除数据库1.常用方法使用项目管理器删除数据库使用命令方式删除数据库命令格式:DELETEDATABASEDELETETABLES用于在删除数据库的同时从磁盘上删除该数据库所含的表等。66.4.1.6删除数据库1.常用方法10.4.1.7关闭数据库1.常用方法直接单击数据库设计器右上角的“关闭”按钮或者关闭数据库窗口,关闭数据库。CLOSEDATABASES[ALL]命令:其中ALL用于关闭所有打开的数据库以及数据库中的表、自由表、索引等。67.4.1.7关闭数据库1.常用方法11.4.2建立数据库表68.4.2建立数据库表12.4.2.1在数据库中建立表1.建立数据库表方法:使用项目管理器建立数据库表使用“新建”或CREATE命令建立数据库新建立的表处于打开状态,此时可以直接进行录入及修改表结构等操作。如果以后再对表进行操作,应先使用USE命令打开表69.4.2.1在数据库中建立表1.建立数据库表13.4.2.2数据库表的字段属性1.字段显示属性字段名规则字段名是字段的惟一标志,由1~128个非空字符组成(自由表字段名长度不能超过10个字符。自由表字段名最长为10个字符。数据库表字段名最长为128个字符。字段名必须以字母或汉字开头。字段名可以由字母、汉字、数字和下划线组成。字段名中不能包含空格。70.4.2.2数据库表的字段属性1.字段显示属性14.字段类型类型用途宽度限定存储字节字符型存储字符序列≤254个字符实际定义宽度数值型存储各种数值(整数)≤20位8逻辑型存储真和假=11日期型存储年、月、日=88日期时间型存储年、月、日、时、分、秒=1414货币型存储币值≤20位(bit)8整数型存储整数≤10位4浮点型存储整数和带小数位的数≤20位8双精度型存储整数和带超长小数位的数≤20位8备注型存储超常的字符(>254个)=4不受限制二进制字符型存储二进制数据实际定义宽度二进制备注型存储超长二进制数据=4不受限制通用型标记OLE=4不受限制表4.1VisualFoxPro字段类型71.字段类型类型用途宽度限定存储字节字符型存储字符序列≤254个设置字段的显示格式A:只允许字母和汉字,不允许空格或标点符号。D:使用当前的SETDATE格式。E:以英国日期格式编辑日期型数据。K:当光标移动到文本框上时,选定整个文本框。L:在文本框中显示当前导零,而不是空格符号。M:允许多个预设置的选择项。R:显示文本框的格式掩码,掩码字符并不存储在控制源中。T:删除输入字段前导空格和结尾空格。!:把小写字母转换为大写字母。$:显示货币符号,用于数值型数据或货币型数据。^:使用科学记数法显示数值型数据,只用于数值型数据。72.16.设置输入掩码X:可以输入任何字符。9:可以输入数字和正负符号。#:可以输入数字、空格和正负符号。$:在固定位置上显示货币符号。*:在值的左侧显示星号。.:点分隔符指定数值的小数点位置。,:用逗号分隔小数点左边的整数部分。$$:在微调控制或文本框中,货币符号显示时不与数字分开。73.17.2.设置字段的有效性设置字段的有效性规则和消息在创建数据库表时,应该考虑输入的数据能否有一个规则来判断是否符合实际要求。如果输入的数据通过字段规则的验证,则用户可以继续输入数据,否则将产生警告信息,要求用户重新输入。设置字段的默认值字段默认值是指在向数据表中添加新的记录时,该字段可以是预先准备好的数值或字符串,不需输入。默认值可以是除了通用型以外的任何数据类型,如果该字段允许使用空值,则可以设置该字段的默认值为.NULL。74.2.设置字段的有效性18.3.设置记录的有效性规则设置字段的有效性规则和消息记录有效性规则属于表的有效性规则,它可以控制用户输入到记录中的信息类型。4.表的触发器定义:触发器是针对数据表的表达式,当表中的任何记录被指定的操作命令修改时,触发器被激活。种类:插入触发器75.3.设置记录的有效性规则19.每次向表中插入或追加记录时触发该规则。更新触发器每次向表中修改记录时触发该规则。删除触发器每次向表中删除记录时触发该规则。触发器的返回值为.T.或.F.。如果为.T.,则允许执行相应的操作(插入记录、更新记录、删除记录),否则不允许执行相应的操作。5.使用长表名和注释设置数据库表的长表名,可以在数据库的“表设计器”对话框中的“表”选项卡中的“表名”文本框中输入长表名。表注释是表的说明信息。当表的文件名和长表名都不能完全说明表的含义时,可以设置表的注释。76.20.4.2.3数据库表的操作1.添加数据表一个数据库中可以包括一个或多个相关联的数据表。可以向数据库中加入任何已经建立的表,但这个表不能属于其他的数据库,因为同一个表在同一时间只能属于一个数据库。如果要把其他数据库中的表加入到一个新的数据库中,可以先把要加入的表从原来的数据库中移出。2.删除数据表数据库删除数据表,和添加数据表的操作方法类似。77.4.2.3数据库表的操作1.添加数据表21.4.2.4修改表结构1.方法:在“项目管理器”中修改表结构在“数据库设计器”中修改表结构使用命令修改表结构如果当前不在数据库设计器中,则首先要用USE命令打开要修改的表,然后使用命令方式MODIFYSTRUCTURE打开表设计器。78.4.2.4修改表结构1.方法:22.4.3表的基本操作79.4.3表的基本操作23.4.3.1使用浏览器操作1.打开浏览器方法:在项目管理器中将数据库展开至表,并且选择要操作的表,然后单击“浏览”命令按钮即可。在数据库设计器中选择要操作的表,然后从“数据库”菜单中选择“浏览”,或者对要操作的表单击鼠标右键,然后从快捷菜单中选择“浏览”。在命令窗口中,用USE命令打开要操作的表,然后输入BROWSE命令来浏览表。80.4.3.1使用浏览器操作1.打开浏览器24.2.浏览操作下一记录:下箭头键前一记录:上箭头键下一页:PageDown键前一页:PageUp键下一字段:Tab键前一字段:Shift+Tab键可用鼠标上、下、左、右滚动翻页和定位记录81.2.浏览操作25.4.3.2增加记录的命令1.APPEND命令定义:APPEND命令是在表的尾部增加一个或多个新记录。2.INSERT命令定义:INSERT命令可以在表的任意位置插入新的记录。82.4.3.2增加记录的命令1.APPEND命令26.4.3.3删除记录的命令1.逻辑删除命令格式:DELETE[FOR<逻辑表达式>]2.恢复记录的命令命令格式:RECALL[FOR<逻辑表达式>]3.物理删除有删除标记的记录命令格式:PACK[MEMO][DBF]83.4.3.3删除记录的命令1.逻辑删除27.4.物理删除表中的全部记录命令:ZAP物理删除表中的全部记录,不管是否有删除标记。该命令只是删除全部记录,并不删除表,执行完该命令后表结构依然存在。84.4.物理删除表中的全部记录28.4.3.4修改记录的命令1.EDIT或CHANGE命令交互修改这两个命令均用于交互式地对当前表记录进行编辑、修改,操作界面类似于APPEND界面。2.REPLACE命令直接修改使用REPLACE命令直接用指定表达式或值来修改记录。85.4.3.4修改记录的命令1.EDIT或CHANGE命令交互4.3.5显示记录命令1.LIST/DISPLAY命令LIST的默认范围是所有记录。信息充满VisualFoxPro主窗口或用户自定义窗口以后,LIST不给提示,继续显示。当SETDELETED为ON时,LIST不显示带删除标记的记录。命令格式:LIST/DISPLAY[[FIELDS]Fiedlist][FORlExpression1][OFF][TOPRINTER[PROMPT]|TOFILEFileName]86.4.3.5显示记录命令1.LIST/DISPLAY命令34.3.6查询定位命令1.用GO、GOTO命令直接定位2.SKIP命令定义:将记录指针向前或向后相对移动若干条记录。相对定位与当前记录有关,它是把记录指针从当前位置相对移动。3.用LOCATE命令定位定义:LOCATE是按条件定位记录位置的命令。87.4.3.6查询定位命令1.用GO、GOTO命令直接定位314.4索引88.4.4索引32.4.4.1索引的概念1.定义:VFP索引是指由指针构成的文件,这些指针逻辑上按照索引关键字的值进行排序。2.分类:主索引定义:主索引是一种设定为主关键字的索引,其内容在一个表中具有唯一性,不允许出现重复值。它强调的“不允许出现重复值”是指建立主索引的字段值不允许重复。如果在任何已含有的重复数据的字段中建立主索引,VFP将产生错误信息,如果一定要在这样的字段上建立主索引,则必须首先删除重复的字段值。89.4.4.1索引的概念1.定义:33.候选索引定义:候选索引和主索引一样,要求字段值的唯一性,并且决定了处理记录的顺序。建立候选索引的字段可以看作是候选关键字,所以一个表可以建立多个候选索引。唯一索引定义:唯一索引的“唯一性”是指允许表中索引项的唯一,而不是字段值的唯一。在数据库表和自由表中均可为一个表建立多个唯一索引。90.34.普通索引定义:普通索引可以决定记录的处理顺序,它不仅允许字段中出现重复值,并且也允许索引项中出现重复值。在数据库表和自由表中均可为一个表建立多个普通索引。91.35.4.4.2在表设计器中建立索引1.单项索引2.复合字段索引定义:在多个字段上的索引称做复合字段索引。2.索引文件的种类非结构单索引文件非结构复合索引文件结构复合索引文件92.4.4.2在表设计器中建立索引1.单项索引36.4.4.3利用命令窗口方式建立索引1.命令:INDEXONeExpressionTOIDXFileName|TAGTagName[OFCDXFileName][FOR lExpresssion][COMPACT][ASCENDING|DESCENDING][UNIQUE|CANDIDATE][ADDITIVE]2.说明:ASCENDING|DESCENDING表示建立升序或降序索引,默认为升序。UNIQUE表示建立唯一索引。CANDIDATE表示建立候选索引。ADDITIVE与建立索引本身无关,表示现在建立索引时是否关闭以前的索引,默认是关闭已经使用的索引。93.4.4.3利用命令窗口方式建立索引1.命令:37.4.4.4使用索引1.打开索引文件命令格式:SETINDEXTO2.设置当前索引命令格式:SETORDERTO3.使用索引快速定位命令:SEEK94.4.4.4使用索引1.打开索引文件38.4.删除索引

格式1:DELETETAGTagName1[OFCDXFileName1],[TagName2[OFCDXFileName2]]…格式2:DELETETAGALL[OFCDXFileName]说明:TagName1[OFCDXFileName1]指定要从复合索引文件中删除的标识。ALL[OFCDXFileName]指定从复合索引文件中删除所有标识。95.4.删除索引39.4.5数据完整性96.4.5数据完整性40.4.5.1实体完整性与主关键字1.实体唯一性定义:在VFP中利用主关键字和候选索引字来保证表中记录的惟一性,即实体惟一性。主关键字称为主索引,候选关键字称为候选索引,两者作用相同。在VFP中将主关键字称为主索引,将候选关键字称为候选索引。建立主索引和候选索引就能够确保记录的唯一性。97.4.5.1实体完整性与主关键字1.实体唯一性41.4.5.2域完整性与约束规则1.域完整性定义:通过限定字段的取值类型和取值范围来保证域完整性,还可以进一步通过域约束规则来保证域完整性。域约束规则也称作字段有效性规则,用于检验输入数据的正确性。建立字段有效性规则通常在“表设计器”中进行,“字段”选项卡中定义字段有效性规则的项目有规则、信息和默认值3项。98.4.5.2域完整性与约束规则1.域完整性42.4.5.3参照完整性与表之间的关联1.建立参照完整性步骤:建立表之间的“永久联系”。设置参照完整性约束。建立了参照完整性,将对相关表做出限制:当主表中没有相关记录时,该记录不得追加到相关子表中。当主表的关键字段值改变导致相关子表中出现不相关记录时,在主表中不允许这样改变。当主表中某条记录在相关表中有相关记录时,则该主表中的记录不允许删除。99.4.5.3参照完整性与表之间的关联1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论