FoxPro+for+Windows程序设计第3章.ppt_第1页
FoxPro+for+Windows程序设计第3章.ppt_第2页
FoxPro+for+Windows程序设计第3章.ppt_第3页
FoxPro+for+Windows程序设计第3章.ppt_第4页
FoxPro+for+Windows程序设计第3章.ppt_第5页
已阅读5页,还剩86页未读 继续免费阅读

下载本文档

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

文档简介

3.1数据库文件的建立和数据的输入3.2数据库的打开、关闭、显示及记录指针3.3数据库数据的增、删、改3.4字段存取控制与记录过滤器,第3章数据库的基本操作,返回主目录,第3章数据库的基本操作,3.1数据库文件的建立和数据的输入3.1.1建立数据库的准备工作利用FoxPro解决实际应用问题时,准确、恰当地建立数据库是至关重要的。为此,需要作好下列建立数据库的准备工作。1.对实际业务的调研充分调查用户业务的处理过程和相关的数据流程,了解用户对使用计算机进行业务处理的需求,确定满足用户需求所涉及的数据项目、类型、长度和精度。,2.数据库的逻辑设计一般作法是,把与实际业务有关的数据项,划分为若干个数据库。确定每个数据库的文件名和数据库结构的个要素(字段名、类型、长度、精度),即绘制出各数据库逻辑结构的二维表。例如,为了进行人事管理,需要建立一个人事档案数据库,为此第一步:进行业务现状和业务处理的需求调查;第二步:数据库的逻辑设计,绘制出如下的数据库结构表:,数据库文件名:RSH.DBF,3.1.2建立数据库文件根据数据库的逻辑设计,指定各个数据库文件的存取路径,在指定的路径下,分别建立数据库的磁盘文件,即进行数据库的物理设计。在FoxPro系统环境下建立数据库文件时,可以在命令窗口中使用命令方式,也可以利用系统菜单,使用选单方式。1.使用命令方式建立数据库文件命令格式:CREATE路径数据库文件的主名,如果命令中不指定所要建立的数据库文件的主名,则最后将数据库文件存盘时,系统会要求用户给出数据库文件名,对于所建立的数据库文件,系统将自动附加扩展名.DBF。如果命令中不指定数据库文件的存储路径,则所建立的数据库文件存入默认目录下。FoxPro系统的默认目录是存储FoxPro系统文件的目录,一般是C:FOXPROW。在单用户微机的环境下,把数据库建立在FoxPro系统文件所在的目录是允许的。但是,如果使用网络终端,因为一般终端用户对C:FOXPROW目录没有文件写入权限,所以网络终端用户建立数据库文件时,必须指定用户可存取目录的路径。现以建立人事档案数据库文件为例,说明使用命令方式建立数据库文件的操作方法。为此,在命令窗口打入建立人事档案数据库文件的命令:,CREATED:rsh回车此时,屏幕立即出现建立数据库结构的TableStructure对话框(见图3.1)。在该对话框中,按数据库的逻辑设计,依次输入字段名、类型、宽度、小数位。输入字段类型时,只能单击类型列表框右端的箭头,从类型列表中选择一种类型;字段宽度和小数位数可以用键盘打入,也可以通过用鼠标单击数码器的上、下箭头设定。字段实际上是一种变量,叫做字段变量,它代表了关系型数据库中的一列数据。字段变量属多值变量,数据库文件中有多少条记录,其字段变量就具有多少个值。字段变量的取值随当前正在操作的记录(称为当前记录)的变化而变化。字段变量的名称最多使用个ASCII符号或个汉字表示。,字段变量有以下种类型:(1)字符型字段(Character型):用于存放字符型数据。字符型字段的最大长度是254个字节,可存储254个半角字符或127个全角字符。(2)数值型字段(Numberic型):用于存放数值型数据。数值型字段允许的最大宽度为20个字节。用户实际使用的宽度和精度由用户在建立数据库时指定。另外,FoxPro还提供了一种叫做浮点型的字段(Float型)。数值型常量和数值型内存变量并不区分型和型,只是在数据库的字段类型中分为型和型。两者在FoxPro系统内部使用没有区别,只是在转换成供其它高级语言使用的数据格式时,型数据比型数据的精度要高。,(3)日期型字段(Date型):用于存放日期型数据。日期型字段具有固定的宽度,默认宽度为8个字节,年、月、日各用两个数字表示。如果用户用命令:SETCENTURYON设置了位年号后,数据库结构中日期型字段的宽度仍为个字节,但是输入和使用的年号已经是位数字了。(4)逻辑型字段(Logical型):用于存放逻辑型数据。逻辑型字段具有固定的长度,即个字节。(5)备注型字段(Memory型):用于存放一种特殊的数据。我们知道字符型数据最多只能存储254个字节的字符,但在实际应用中有时需要存储更多的字符,备注型字段正是为此而设置的。,宽度固定为个字节,用于存放一个指针。该指针用于指向一个和数据库文件同名、扩展名为.FPT的文件。在这个.FPT文件中,每个备注型字段的存储容量可达。(6)通用型数据(General型):用于存放图像、电子表格、声音等多媒体对象。通用型字段宽度固定为个字节,如同型字段,它仅仅存放一个指针。该指针指向和数据库文件同名、扩展名为.FPT的文件。在该文件中,存放着对应的多媒体对象的具体内容。如果某个字段的类型选择了型或型,则除了建立数据库文件(.DBF文件)之外,还同时生成一个主名和数据库文件主名相同的.FPT文件,专门用于存储型和型数据。在这种情况下,如果丢失了和数据库文件对应的.FPP文件,则数据库文件将不能使用。所以,当复制数据库文件时,必须连同对应的.FPT一起复制。,注意:每当一个项目输入完毕后不要用回车键,而是用鼠标或用箭头键指向下一个输入项目。若用鼠标单击某一输入项,可以对该项目已经输入的内容进行修改;若需要插入字段,则用鼠标选中字段插入位置,再单击Field框内的“Insert”按钮;若要删除已经输入的字段,则用鼠标选中要删除的字段后,再单击Field框内的“Delete”按钮。输入或修改结束后,按Ctrl+W键,或者单击“OK”按钮,即可存盘并返回到FoxPro系统;如果单击“Cancel”按钮,则将放弃本次建库操作并返回FoxPro系统。当所建立的数据库文件存盘返回FoxPro系统时,出现一个系统询问是否转入数据输入操作的对话框,这里我们暂时不进行数据输入操作。,2.使用选单方式建立数据库文件用鼠标单击FoxPro系统菜单中的File,在其下拉菜单中选择New.。此时,出现New对话框(见图3.2),该对话框中FileType区列出了各种文件的类型。为建立数据库文件,从中选择的类型应当是Table/DBF,单击“New”按钮之后也出现如图3.1的对话框,后续操作同命令方式。用选单方式建立数据库文件时,其操作顺序是先建立数据库结构,后指定文件名和存储路径。所以,当退出数据库结构的输入窗口后,立即出现指定文件名及其存储路径的“SaveAs”对话框(见图3.3)。,在SaveAs对话框的磁盘驱动器列表框Drive中选择一个目标磁盘;在目录列表框Directory中选择一个目标目录;在SaveTableAs下的文本框中输入所建立的数据库文件的主名。当完成数据库文件名及存储路径的指定之后,单击对话框中的“Save”按钮,则存盘返回到FoxPro系统;单击Cancel按钮,则放弃存盘返回到FoxPro系统。注意:用选单方式建立数据库文件时,因为操作过程是先输入数据库结构后指定文件的存储路径,所以当在图3.2所示的New对话框中选择了文件类型并单击“New”按钮后,系统认为用户企图在默认目录C:FOXPROW下存储文件。所以,在网络终端环境下,不能使用选单方式建立数据库。,3.使用复制数据库结构的方法建立库文件利用已经建成的数据库文件,用数据库结构复制的方法,可以建立其它数据库文件。为此,需要使用数据库结构的复制命令:COPYSTRUCTURETO路径新库文件名FIELDS新库的字段名表例如,设数据库Rsh.dbf刚刚建立(处于打开状态),可用数据库结构复制的方法分别建立名为Rsh1.dbf、Rsh2.dbf的两个数据库文件。要求Rsh1.dbf具有姓名、性别、工资等个字段;Rsh2.dbf具有姓名、性别、出生日期、技术等级等个字段。在命令窗口打入生成Rsh1.dbf结构的命令:,COPYSTRUCTURETOD:rsh1FIELDS姓名,性别,工资在命令窗口打入生成Rsh2.dbf结构的命令:COPYSTRUCTURETOD:rsh2FIELDS姓名,性别,出生日期,技术等级不难验证,执行了上面的命令之后,在盘的根目录下确实出现了Rsh1.dbf和Rsh2.dbf两个文件。,3.1.3数据库结构的修改当结束建立数据库结构的操作之后,还可以对其结构进行修改。修改数据库结构的操作也分为命令方式和选单方式。1.命令方式命令格式:MODIFYSTRUCTURE此命令执行后,出现和图3.1类似的TableStructure对话框。先用鼠标或用Tab键、箭头键选中修改对象,再进行修改操作。修改完后,按Ctrl+W键或单击“OK”按钮存盘退出;按Esc键或单击Delete按钮,则放弃修改。,2.选单方式单击系统菜单中的Database,在其下拉菜单中选择Setup.,出现Setup对话框(见图3.4),单击“Modify”按钮,出现和图3.1类似的TableStructure库结构修改窗口,后续操作同命令方式。,3.1.4用键盘向数据库输入数据1.退出建库操作并转入数据输入退出建库操作后,对于系统询问:Inputdatarecordnow?若选择Yes,则出现数据库记录输入窗口(见图3.5),用户可在此窗口输入数据库的数据;若选择No,则完成建库后不转入输入数据的操作,待以后用专门的命令输入数据。数据输入窗口显示出一条记录的字段名及各个字段对应的数据输入区,用户可以依次在各个字段的数据输入区键入对应的数据。当输入的数据达到字段所能接收的数据宽度时,自动转向下一个字段的输入;,如果所输入的数据宽度少于字段宽度时,应当用回车键结束当前字段的输入并转入下一个输入字段,也可以用鼠标单击下一个输入字段。其中,M型字段已经显示memo,G型字段已经显示gen,表明这两种字段数据需要使用特殊的方法输入数据,后面将专门介绍这两种类型数据的输入方法。对已经输入的数据,可以修改。修改的方法是:用箭头键指向或用鼠标单击需要修改的输入项,使其成为当前输入项,重新输入正确的数据。当结束数据输入时,可以用下列任意一种方法将输入的数据存盘并关闭数据输入窗口,返回到FoxPro系统:(1)按Ctrl+W键;(2)按Esc键;(3)按Ctrl+Q键;,(4)单击输入窗口标题左端的控制按钮,从其下拉菜单中选择退出命令。在数据输入过程中,FoxPro是以字段为单位写入数据库文件对应的内存缓冲区的,所以当一个字段的输入是以回车键结束或用箭头键指向了下一个字段或用鼠标单击下一个字段后,所输入的字段值,就已经存入了数据库文件的内存缓冲区。此时,不论使用哪种方法退出输入窗口,都不会丢失已经输入的数据。2.向数据库追加记录的命令命令格式:APPENDEBLANK执行该命令,打开和图3.5相同的数据库数据输入窗口,以便用户向当前数据库输入数据。,APPENDE命令总是从数据库中最后一条记录的后面追加新的记录。APPENDE命令激活数据输入窗口后,可以连续追加多条记录的数据,如果要停止数据的输入,则使用上述退出数据输入窗口的一种方法,终止APPENDE命令的执行并返回到FoxPro系统。该命令如果选用BLANK,则不激活数据输入窗口,仅从数据库后面追加一条空记录,供以后再用其它命令向各个空字段输入数据。3.型、型数据的输入1)M型数据的输入型字段的数据是存入扩展名为.FPT文件的。型数据的输入、输出,都是在型数据的输入、输出窗口内进行的。,当型字段成为当前操作对象时,选用下列的任意一种操作,都能进入型字段数据的输入、输出窗口:(1)用鼠标双击型字段。(2)按复合键Ctrl+PageDown或Ctrl+PgDn或Ctrl+Home。当输入或编辑结束后,按Ctrl+W键可将M型字段数据存入.FPT文件并返回到数据输入窗口。2)型数据的输入型字段的数据是存入扩展名为.FPT文件的。由于FoxPro本身不具备生成多媒体数据的功能,所以需要事先用其它软件准备好多媒体数据,然后再写到型字段对应的.FPT文件中。多媒体数据可用Word、Excel及画笔等多媒体写作软件生成。,常用的型数据输入方法有以下两种:(1)插入对象。双击型字段或按Ctrl+PageDown键,进入型字段输入窗口;单击系统菜单Edit,从下拉菜单中选择InsertObject.(插入对象),激活InsertObject窗口(见图3.6);从InsertObject窗口中的ObjectType框选择需要插入的多媒体文件类型;所选文件类型将自动激活一种具有制作多媒体信息功能的软件,在所激活的软件环境下,制作或打开需要插入的多媒体文件;,插入的多媒体信息将显示在型数据输入窗口,按Ctrl+W键,存入.FPT文件并返回到数据输入窗口。(2)利用剪贴板。启动某一多媒体制作软件;制作或打开多媒体文件,从中选择剪贴对象并剪贴到剪贴板;回到FoxPro的数据输入窗口,置型字段为当前输入字段;鼠标双击型字段或按Ctrl+PageDown键,进入型字段输入窗口;单击系统菜单Edit,从下拉菜单中选择Paste(粘贴),则在型字段输入窗口出现通过剪贴板传送来的多媒体数据;,3.1.5从其它数据库向当前打开的数据库追加记录如果两个数据库具有一些相同的字段名和属性,则可以把一个数据库(源库)中的数据追加到另一个数据库(目标库)中。为此,需要使用从一个数据库向当前打开的数据库追加记录的命令。1.命令格式APPENDFROMWB路径源数据库文件名FIELDS字段名表FOR条件为了说明APPENDFROM命令的使用方法,先举一个使用了APPENDFROM命令的例子。,例3.1设有和人事档案数据库(Rsh.dbf)结构相同的两个数据库Rsh1.dbf、Rsh2.dbf,并且Rsh.dbf中有以下条记录:,姓名性别出生日期婚否技术等级工资简历图片朱宪佐男07/21/65.T.9432.50张俐荣女09/10/54.T.8521.00Rsh1.dbf中有以下条记录:,姓名性别出生日期婚否技术等级工资简历图片宋卫星男11/21/65.T.9432.50钱小荣女09/10/54.T.8521.00王德明男04/27/76.T.11345.21朱福彦男10/28/45.T.5754.50赵四蔓女06/15/46.T.6687.49,Rsh2.dbf中有以下条记录:姓名性别出生日期婚否技术等级工资简历图片王小萍女08/13/69.T.10443.66沈红苑女12/21/78.F.11350.00刘智铁男03/23/79.F.12289.60,其中,Rsh1.dbf和Rsh2.dbf是此前已经建立、输入了数据并存盘的数据库文件。如果Rsh.dbf不是刚刚建立的数据库,为了从Rsh1.dbf和Rsh2.dbf向Rsh.dbf追加记录,需要在命令窗口先打入打开数据库Rsh.dbf的命令:USED:rsh回车,然后才能依次打入向Rsh.dbf追加记录的命令:,USED:rsh(打开人事数据库文件)APPENDFROMD:rsh1FIELDS姓名,性别,出生日期,技术等级(命令)APPENDFROMD:rsh2FIELDS姓名,工资FOR性别女(命令)上面两条命令执行后,数据库Rsh.dbf中的记录如下:,姓名性别出生日期婚否技术等级工资简历图片朱宪佐男07/21/65.T.9432.50张俐荣女09/10/54.T.8521.00宋卫星男11/21/65.T.9钱小荣女09/10/54.T.8王德明男04/27/76.T.11朱福彦男10/28/45.T.5赵四蔓女06/15/46.T.6王小萍443.66沈红苑350.00,(3)源库和目标库的同名字段的类型必须一致。源库和目标库同名、同类型的字段,如果其宽度不同,当目标库的字段宽度大于源库的字段宽度时,字段值仍可以正常传送。但是,当目标库的字段宽度小于源库时,字符型字段值被截尾传送;而数值型字段值的传送会出现以下两种情况:目标库把整个宽度首先用于存放整数部分,剩余的宽度用于存放小数的高位部分;如果目标库的字段宽度容纳不下源库字段值的整数部分时,目标库中接收数据的字段值被“*”填充。(4)命令中如果使用条件分句,则只追加源库中那些符合条件的记录。例如,例3.1中的命令使用了条件分句:FOR性别女,所以源库Rsh2.dbf中性别为男的记录没有向目标库追加。,最后,还需要说明向数据库输入数据及显示数据库中数据的操作中,值得注意的个问题:不能试图用赋值命令向数据库当前记录中的字段赋值。例如,设当前数据库有名为“工资”的字段名,则赋值命令工资=600.50回车并不能将数据600.50存入数据库中的“工资”字段中,而是建立了一个名为“工资”的内存变量。,可以使用输出命令?或?显示数据库当前记录中的字段值。例如,设当前数据库中有字段名“姓名”、“性别”、“工资”,则命令:?姓名,性别,工资回车可以显示出当前记录中这三个字段的字段值。:但是,当一个内存变量和当前数据库中的一个字段同名时,所显示的不是内存变量存储的数据,而是数据库中的字段值。例如,设当前数据库中有名为“工资”的字段名,且已知“工资”字段的当前值是600.50,若顺序执行下面的两条命令:,工资=300?工资则屏幕所显示的是数据库当前记录中“工资”字段的字段值600.50。如果用户需要显示和字段同名的内存变量所存储的数据,应当在内存变量名之前加内存变量限定符“m.”。例如,执行命令:?m.工资则所显示的就不再是“工资”的字段值,而是内存变量“工资”所存储的数据了。,.数据库的打开、关闭、显示及记录指针,3.2.1数据库的打开和关闭1.数据库文件的打开打开数据库文件是指把存在于磁盘上的某一个.DBF类型的文件置于可操作状态。例如,每次进入FoxPro系统之后,如果要对以前已经建立的数据库进行操作,首先必须把要操作的数据库文件打开。可用命令方式或选单方式打开数据库文件。1)命令方式命令格式:USE路径数据库文件名ALIAS别名,如果不指定需要打开的数据库文件名,则表示关闭当前已经打开的数据库。若使用ALIAS,则需为打开的数据库专门再指定一个别名;如果不使用ALIAS,则别名与数据库文件的主名相同。别名的概念和作用,将在第章介绍多库操作时说明。2)选单方式(1)单击系统菜单File,选择其下拉菜单中的Open.,出现如图3.7所示的Open对话框。(2)在Open窗口,从列表框Drive、Directory中分别选择对象文件所在的驱动器、目录,在列表框ListFilesofType选择文件类型,再用打入文件名或选择文件名的方式指定要打开的文件,单击“Open”按钮,则完成文件打开操作。,在Open窗口的右侧,提供了个复选框。若选中ReadOnly,则所打开的文件作为只读文件使用;复选框Exclusive在网络环境下使用,若被选中,则所打开的数据库文件成为独享文件,其他用户再不能打开它。2.数据库的关闭命令为了数据的完整和安全,使用完数据库后一定要关闭。关闭命令有多种:USE关闭当前数据库USE另一数据库文件名关闭当前数据库并打开其它数据库CLOSEALL关闭所有已经打开的文件,CLOSEDATABASES关闭所有已经打开的数据库文件CLEARALL关闭所有打开的文件并清除内存变量,3.2.2显示数据库记录和数据库结构1.显示数据库中的记录显示数据库记录的命令有三条,分别是:(1)连续显示的命令:LIST范围FIELDS字段名表FOR条件(2)分屏显示的命令:DISPLAY范围FIELDS字段名表FOR条件,(3)数据浏览命令:BROWSE范围FIELDS字段名表FOR条件其中,范围短语可选用:ALL、NEXTn、RECORDn、REST;FOR短语的作用是指定作为可显示记录的条件;FIELDS短语用于指定记录中需要显示的字段,如果是多个字段,各个字段名之间用逗号分隔。对上列命令格式中的可选短语说明如下:(1)范围。LIST命令中范围的缺省值是ALL。DISP命令中范围的缺省值取决于FOR短语,如果有FOR短语,则缺省值是ALL;如果没有FOR短语,则缺省值是NEXT1(即当前记录)。,BROW命令中范围的缺省值是ALL,但是指定了NEXTn时,只显示当前记录。(2)FOR条件。FOR短语只在命令中指定的范围内起作用。LIST、DISP、BROW命令中FOR短语的缺省值都是.T.。(3)FIELDS字段名表。FIELDS的缺省值是数据库记录中的所有字段。,例3.2USED:rsh(打开一个数据库文件)LISTNEXT2(显示从当前记录开始的两条记录)LIST姓名,工资(显示所有记录中的指定字段值)DISP(只显示当前记录)DISPALL(分屏显示所有的记录)DISPALL姓名,工资FOR工资140(选择显示符合条件的所有记录),BROW(全屏幕浏览所有的记录)BROWFIELDS姓名,性别,工资(全屏幕浏览各记录中指定的字段)和LIST、DISPLAY命令不同的是,数据浏览命令(BROWSE)将激活一个数据浏览窗口,数据库中的数据显示在浏览窗口中,数据浏览窗口见图3.8。Browse窗口标题行显示出所浏览的数据库文件名,窗口标题下显示了数据库的字段名。可用鼠标拖动字段名到其它位置,用于改变该列字段数据的显示顺序;,当鼠标指针指向两个字段名的分界线时,鼠标指针的形状改变为双向箭头,此时可以左右拖动字段名的分界线,改变字段的显示宽度;在浏览窗口,对选中的目标字段值还可以进行修改。所以,在交互方式下,浏览数据的命令是经常使用的一个命令。2.显示数据库的结构命令格式:LISTSTRUCTURE或DISPLAYSTRUCTURE两个命令的功能相同,只是显示方式不同,LISTSTRU是连续显示,DISPLAYSTRU是分屏显示。,例3.3USED:rsh(打开一个数据库文件)LISTSTRU(连续显示当前数据库的结构)DISPSTRU(分屏显示当前数据库的结构),3.2.3数据库记录指针对于已经打开的数据库,系统在内存分配了和该数据库的磁盘文件进行数据交换的缓冲区。数据库文件中的数据是以记录为单位存取到缓冲区的,系统是通过缓冲区向磁盘文件写入或读取数据的。用户可以直接存取的数据库叫做当前数据库,当前数据库中可以直接操作的记录是当前记录,用户可以通过有关命令改变当前记录。为了标识当前记录,系统在打开的数据库中设置了记录指针,当前记录就是记录指针所指向的记录。用户改变当前记录,是通过移动数据库中的记录指针实现的。,FoxPro提供了一系列移动记录指针的命令。用记录指针移动命令和把记录指针移动到目标记录的操作,是对数据库进行记录查询、数据编辑和其它数据库的应用、维护、管理操作的基础。因此,用户对数据库中的记录指针的当前位置要做到胸中有数。移动记录指针的操作命令分为记录的绝对定位命令和记录的相对定位命令。1.记录的绝对定位命令这是一类与当前记录指针位置无关的记录定位命令,其命令格式有:记录号记录指针指向第条记录,仅限于命令窗口内使用),GO记录号(记录指针指向第条记录)GOTOP(记录指针指向第一条记录)GOBOTTOM(记录指针指向最后一条记录)例3.4USED:rsh(刚打开的数据库,记录指针指向第一条记录)3(记录指针指向了第三条记录)GO2(记录指针指向了第二条记录)GOTOP(记录指针指向了首记录)GOBOTTOM(记录指针指向了尾记录),2.记录的相对定位命令这是和当前记录位置有关的记录指针定位命令,即从当前指针位置开始,上、下移动记录指针。其命令格式是:SKIP数值表达式该命令只取用数值表达式结果值的整数部分。当其结果值为正整数n时,该命令驱动记录指针下移n条记录;当其结果值为负整数n时,该命令驱动记录指针上移n条记录;缺省数值表达式时,相当执行下移一条记录(即SKIP和SKIP1是等价的命令)。例3.5USED:rsh(刚打开的数据库,记录指针指向第一条记录),SKIP3(向下移动三条记录,即指针指向第四条记录)BROW(查看记录指针的移动情况)SKIP-1(记录指针向上移动一条记录,即指向第三条记录)DISP(显示当前记录)SKIP2*3-7(记录指针指向第二条记录)DISP(显示当前记录)值得注意的是,有一些并非是移动记录指针的命令,也能驱动记录指针的移动。例如,执行LIST命令后,将使记录指针指向数据库文件的尾标记(最后一条记录的后面)。因此,用户还应当了解由于执行其它命令引起记录指针移动的情况。,.数据库数据的增、删、改,3.3.1数据库的备份和恢复1.数据库的备份(1)备份数据库的命令:COPYTO路径生成数据库名FIELDS字段名表范围FOR条件(2)说明:源数据库是当前数据库,目标数据库(副本)是磁盘文件。,范围的缺省值是ALL,FIELDS的缺省值是全部字段,FOR的缺省值是.T.。也可以在DOS下用COPY命令或在Windows下用文件复制的方法做数据库的备份。但是,离开FoxPro系统的备份方法就不能做字段、记录的选择。为了使数据库文件中的数据能被其它软件利用,可以用此命令将数据库文件复制为文本文件。为此,在此命令后面加上关键字:DELIMITEDWITH数据项分隔符如果不指定数据项分隔符,则数据项之间用逗号分隔,其中的字符型数据带有界定符。,例如,依次打入下列命令:USED:rshCOPYTOD:ABCDELIMITED则生成主名为ABC、扩展名为.TXT的文本文件,它是可以在一种文字编辑软件下阅读的文件。2.数据库的恢复(1)在操作系统下,使用文件复制的方法恢复数据库文件。(2)打开备份数据库文件,以备份数据库作为源数据库,沿用数据库备份命令,生成要恢复的数据库文件。,3.举例例3.6做Rsh.dbf完整的备份数据库,备份库名为RSHBF1.DBF。USED:rshCOPYTOD:rshbf1例3.7STHT5SS做Rsh.dbf只包含字段姓名、工资的备份数据库。USED:rshCOPYTOD:rshbf2FIELDS姓名,工资例3.8做Rsh.dbf只包含姓名、工资两个字段且性别为男的备份数据库。,3.3.2数据库中数据的修改可用于修改数据库中数据的命令有很多,这里仅介绍EDIT、CHANGE、REPLACE等三条修改命令的主要功能。注意:使用下面的数据修改命令前,应当先使用指针移动命令,把需要编辑的记录置为当前记录。1.编辑命令命令格式一:EDIT范围FIELDS字段名表FOR条件命令格式二:CHANGE范围FIELDS字段名表FOR条件,EDIT和CHANGE命令的效果相同。当执行EDIT或CHANGE命令时,屏幕出现和图3.5相同的记录编辑窗口,对字段值修改后只要打入回车键,修改就有效。对当前记录修改完后,自动将下一条记录作为当前编辑的记录。存盘退出数据编辑窗口的操作同数据输入命令。例3.9USED:rshEDIT(对当前记录进行编辑)EDITFIELDS姓名,工资(对当前记录指定的字段值进行编辑),EDITFOR工资140(对全库满足条件的记录进行编辑)EDIT5(对指定的记录进行编辑)2.替换命令命令格式:REPLACE范围字段名WITH表达式,FOR条件本命令用表达式的值替换数据库记录中字段的当前值。如果使用了FOR短语而又指定了范围,则范围内的所有记录都是操作对象;如果使用了FOR短语而没有指定范围,则在全数据库中,凡是符合条件的记录都是操作对象。如果使用FOR短语而指定范围为缺省范围,则此命令只对当前记录有效。,用APPENDBLANK命令向数据库追加了一条空记录后,如果不能用赋值命令直接向字段赋值,则一般用替换命令向各个空字段写入数据。例3.10对数据库Rsh.dbf中的工资字段值,用替换命令进行修改。依次打入下列命令,请观察替换命令执行的效果:USED:rshREPLACE工资WITH工资+50(仅对当前记录的工资字段值进行修改)BROW(验证替换命令的执行结果,下同)REPL工资WITH工资+50FOR工资200(对工资小于200的所有职工都增加50元),BROWREPLALL工资WITH工资+50FOR工资字段名或别名.字段名(5)当关闭数据库时,字段存取控制的设置随之失效。,(6)用户可以用DISPLAYSTRU或LISTSTRU命令查阅数据库中允许存取的字段,凡是允许存取的字段名前系统自动加上了一个标记符号。例3.19对数据库Rsh.dbf进行各种字段存取控制操作。USED:rshSETFIELDSTO(因为此前未设置可存取字段,此命令无作用)SETFIELDSTO工资(置工资字段为可存取的字段)BROW(可见,只能显示工资一个字段)SETFIELDSTO,执行上面最后的一条命令后,因为此前已经执行过设置可存取字段的命令,所以这条命令将使所有的字段都成为不可存取的字段。若打入显示当前记录的命令BROW,则屏幕出现“Nofieldstoprocess”的信息。可见,在对数据库已使用过字段存取控制命令后,SETFIELDSTO命令确实使所有字段都不能存取。2.字段存取控制的开关命令命令格式:SETFIELDSON|OFF如果曾经对数据库指定了字段存取控制,使用该命令才有意义。显然,如果设置了字段存取控制,则存取控制的开关处于ON状态;此后如果选择OFF,则指定的字段存取控制变为无效,再次使用该命令并选择ON,又能使存取控制有效。,3.取消已经设置的存取控制命令格式:SETFIELDSTOA

温馨提示

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

评论

0/150

提交评论