第四章数据库及其操作精选PPT.ppt
第四章数据库及其操作第1页,此课件共107页哦第一节第一节 项目、数据库与表项目、数据库与表第二节第二节 表中记录的操作表中记录的操作第三节第三节 排序、索引与查询排序、索引与查询第四节第四节 多表的操作多表的操作本章考点本章考点返 回第2页,此课件共107页哦第一节第一节 项目、数据库与表项目、数据库与表 一、一、项目的操作项目的操作 二、二、数据库的操作数据库的操作 三、三、表的操作表的操作第3页,此课件共107页哦一、项目的操作一、项目的操作.项目:文件、数据、文档和项目:文件、数据、文档和Visual Visual FoxproFoxpro对象的集合对象的集合.项目管理器:软件开发工作中,管理项目管理器:软件开发工作中,管理和组织所需文件、数据、文档和和组织所需文件、数据、文档和VFPVFP对象对象的工具。的工具。.项目的操作:项目的操作:(1 1)新建:建立的项目在计算机中保存为扩)新建:建立的项目在计算机中保存为扩展名为展名为.pjx.pjx的文件。的文件。例如:建立一个名为例如:建立一个名为“学生管理学生管理.pjx”.pjx”的项的项目文件,操作方法如下:目文件,操作方法如下:第4页,此课件共107页哦菜单:单击菜单:单击“文件,新建文件,新建”文件类型文件类型选择选择“项目项目”单击单击“新建文件新建文件”注意:注意:a)a)保存时,一定指定文件名及保存在计保存时,一定指定文件名及保存在计算机中的位置。算机中的位置。b)b)不指定保存位置,系统自动保存在不指定保存位置,系统自动保存在默默认目录认目录设置的文件夹中。设置的文件夹中。第5页,此课件共107页哦默认目录的设置:单击默认目录的设置:单击“工具,选工具,选项项”单击单击“文件位置文件位置”选项卡选项卡(2)(2)打开:使用前必须先打开打开:使用前必须先打开 操作方法:操作方法:单击单击“文件,打开文件,打开”选择要打开的选择要打开的文件所在文件夹及文件,单击文件所在文件夹及文件,单击“确定确定”按钮。按钮。(3)(3)关闭:单击项目管理器右上角的关关闭:单击项目管理器右上角的关闭按钮。闭按钮。第6页,此课件共107页哦 当关闭一个空项目文件时,出现提当关闭一个空项目文件时,出现提示对话框,单击示对话框,单击“删除删除”,将删除该空,将删除该空项目文件;单击项目文件;单击“保持保持”,将保存该空,将保存该空项目文件。项目文件。(4)(4)项目管理器的选项卡:项目管理器的选项卡:项目管理器有项目管理器有6 6个选项卡,其中个选项卡,其中“数据数据”、“文档文档”、“类类”、“代代码码”、“其他其他”5 5个选项用于分类显示各个选项用于分类显示各种被管理的文件,种被管理的文件,“全部全部”选项卡用于选项卡用于显示所有文件。显示所有文件。第7页,此课件共107页哦a)“a)“数据数据”选项卡:包含项目中所有的数选项卡:包含项目中所有的数据文件据文件数据库、自由表、查询数据库、自由表、查询b)“b)“文档文档”选项卡:包含处理数据时所用选项卡:包含处理数据时所用的三类文件的三类文件表单、报表表单、报表、标签、标签c)“c)“类类”选项卡:包含用户自定义控件选项卡:包含用户自定义控件d)“d)“代码代码”选项卡:包含三类程序选项卡:包含三类程序程序程序、APIAPI库、应用程序库、应用程序e)“e)“其它其它”选项卡:包含选项卡:包含菜单、文本文件菜单、文本文件、其他文件其他文件第8页,此课件共107页哦f)“f)“全部全部”选项卡:显示以上所有类型选项卡:显示以上所有类型 的文件的文件(5)(5)使用项目管理器使用项目管理器 在项目管理器右侧同时显示在项目管理器右侧同时显示6 6个按个按钮,但是根据用户选定文件类型的不钮,但是根据用户选定文件类型的不同,会显示不同的按钮,从而进行不同同,会显示不同的按钮,从而进行不同的操作。的操作。第9页,此课件共107页哦 在项目管理中我们可以建立数据库文件,在项目管理中我们可以建立数据库文件,所建立的数据库由该项目管理。没有项目所建立的数据库由该项目管理。没有项目时,也可以建立数据库即非项目数据库。时,也可以建立数据库即非项目数据库。1 1、新建、新建 数据库建立后,在计算机中保存为数据库建立后,在计算机中保存为扩展名为扩展名为.dbc.dbc的文件,同时生成两个辅的文件,同时生成两个辅助文件,扩展名为助文件,扩展名为.dct.dct和和.dcx.dcx。二、数据库的操作二、数据库的操作第10页,此课件共107页哦操作方法:操作方法:(1)(1)项目管理器项目管理器 在项目管理器中,选中在项目管理器中,选中“数据数据”选选项卡中的项卡中的“数据库数据库”文件类型,单击文件类型,单击“新建新建”按钮,在打开的按钮,在打开的“创建创建”对话对话框中输入数据库文件名并保存。框中输入数据库文件名并保存。(2)(2)菜单:单击菜单:单击“文件,新建文件,新建”单击文单击文件类型件类型“数据库数据库”单击单击“新建文件新建文件”按钮,其他操作同方法一。按钮,其他操作同方法一。第11页,此课件共107页哦(3)(3)命令:命令:CREATE DATABASE CREATE DATABASE 数据库名数据库名|?|?用命令创建数据库后,只是打开数用命令创建数据库后,只是打开数据库、不打开数据库设计器。据库、不打开数据库设计器。2.2.打开打开 操作方法:操作方法:(1)(1)使用项目管理器(项目数据库)使用项目管理器(项目数据库)选择项目管理器中的数据选项卡,选择项目管理器中的数据选项卡,选中要打开的数据库文件,单击选中要打开的数据库文件,单击“打开打开”按钮。按钮。第12页,此课件共107页哦(2)(2)菜单:单击菜单:单击“文件文件,打开打开”选择文选择文件类型件类型“数据库数据库”、文件所存放位置、文件所存放位置、文件名,单击文件名,单击“确定确定”。(3)(3)命令:命令:OPEN DATABASE OPEN DATABASE 数据库文件名数据库文件名|?|?EXCLUSIVE|SHAREDEXCLUSIVE|SHARED说明:说明:a)a)不指定数据库文件名或使用?,将显示不指定数据库文件名或使用?,将显示打开对话框。打开对话框。第13页,此课件共107页哦b)EXCLUSIVEb)EXCLUSIVE:以独占方式打开数据库,即不:以独占方式打开数据库,即不允许其它用户在同一时刻使用该数据库。允许其它用户在同一时刻使用该数据库。c)SHAREDc)SHARED:以共享方式打开,允许其它用户:以共享方式打开,允许其它用户在同一时刻共享使用该数据库。在同一时刻共享使用该数据库。(4)(4)当前数据库的设置:当前数据库的设置:VFPVFP可以同时打开多个数据库,但在同可以同时打开多个数据库,但在同一时刻只能对其中一个数据库操作,该数据一时刻只能对其中一个数据库操作,该数据库称为当前数据库。库称为当前数据库。第14页,此课件共107页哦设置方法设置方法:a a)命令:)命令:SET DATABASE TO SET DATABASE TO 数据库文件名数据库文件名 b b)工具栏:单击常用工具栏上的数据)工具栏:单击常用工具栏上的数据库下拉列表按钮,选择指定数据库为当前库下拉列表按钮,选择指定数据库为当前数据库。数据库。3.3.关闭数据库关闭数据库命令:命令:CLOSE ALL|DATABASECLOSE ALL|DATABASE说明:说明:ALL ALL 关闭所有对象关闭所有对象 DATABASE DATABASE 关闭当前数据库关闭当前数据库第15页,此课件共107页哦4.4.修改:修改数据库不是修改数据库文修改:修改数据库不是修改数据库文件,而是打开数据库设计器后对数据库件,而是打开数据库设计器后对数据库对象的操作。对象的操作。(1)(1)打开数据库设计器:打开数据库设计器:a)a)项目管理器项目管理器b)b)菜单打开数据库菜单打开数据库c)c)命令命令MODIFY DATABASE MODIFY DATABASE 数据库文件名数据库文件名|?|?第16页,此课件共107页哦 在在Visual Foxpro Visual Foxpro 中根据表与数据库之间中根据表与数据库之间的关系,可以把表分为数据库表和自由表。的关系,可以把表分为数据库表和自由表。数据库表是被一个数据库文件管理的表,数据库表是被一个数据库文件管理的表,而自由表是不属于任何数据库管理的表文而自由表是不属于任何数据库管理的表文件。件。.新建表新建表建立表文件分两步:建立表文件分两步:一、打开表设计器设计表结构一、打开表设计器设计表结构二、向表中输入记录二、向表中输入记录 三、表的操作三、表的操作第17页,此课件共107页哦(1)(1)打开表设计器打开表设计器有四种方法:有四种方法:数据库设计器:数据库设计器:在数据库设计器空白处在数据库设计器空白处右击右击“新建表新建表”或单击或单击菜单菜单“数据库数据库新建表新建表”或单击或单击“数据库设计器数据库设计器”工具栏工具栏的的“新建表新建表”按按钮,弹出钮,弹出“新建表新建表”对话框,单击对话框,单击“新新建表建表”按钮。按钮。项目管理器:项目管理器:第18页,此课件共107页哦 在项目管理器的在项目管理器的“数据数据”选项卡中,若创选项卡中,若创建自由表则选中建自由表则选中“自由表自由表”,单击,单击“新建新建”按钮;若创建数据库表,则单击指定数据库按钮;若创建数据库表,则单击指定数据库文件前面的文件前面的“+”+”,选中,选中“表表”,单击,单击“新建新建”按钮。按钮。菜单:单击菜单:单击“文件文件”新建新建”选择文选择文件类型件类型“表表”单击单击“新建文件新建文件”。命令:命令:CREATE CREATE 表文件名表文件名 说明:用后两种方法建立表文件时,如果说明:用后两种方法建立表文件时,如果有当前数据库,则建立的表是数据库表;否则有当前数据库,则建立的表是数据库表;否则是自由表。是自由表。第19页,此课件共107页哦(2)(2)设计步骤设计步骤 第一步:设计表结构第一步:设计表结构 即确定表的列数及各列属性。表中每列即确定表的列数及各列属性。表中每列称为字段变量,简称字段。称为字段变量,简称字段。字段名:符合标识符的定义,自由表中字段名:符合标识符的定义,自由表中的字段名最多选用的字段名最多选用1010个字符,数据库表可个字符,数据库表可选用选用128128个。个。字段类型:该列数据的类型。根据具体字段类型:该列数据的类型。根据具体情况从以下数据类型中选择。情况从以下数据类型中选择。第20页,此课件共107页哦 字符型字符型(C)(C)、货币型、货币型(Y)(Y)、数值型、数值型(N)(N)、日期型日期型(D)(D)、日期时间型、日期时间型(T)(T)、整型、整型(I)(I)、逻辑型逻辑型(L)(L)、备注型、备注型(M)(M)、通用型、通用型(G)(G)宽度:表示该字段所允许存放数据的宽度:表示该字段所允许存放数据的最大宽度。最大宽度。小数位:小数点后保留的位数。小数位:小数点后保留的位数。NULLNULL:是否允许空值。:是否允许空值。第21页,此课件共107页哦注意:对于数据库表,还有显示、字段注意:对于数据库表,还有显示、字段有效性等属性的设置。有效性等属性的设置。字段有效性字段有效性规则规则:指定一个:指定一个逻辑表达式逻辑表达式,限制该字,限制该字段的取值范围。段的取值范围。信息信息:指定一个:指定一个字符串字符串,当输入了不符,当输入了不符合规则的数据,将显示所设置的信息合规则的数据,将显示所设置的信息默认值默认值:输入数据时,系统自动为该字:输入数据时,系统自动为该字段设置的值。段设置的值。第22页,此课件共107页哦第二步:输入记录第二步:输入记录1 1)按照各种类型数据的格式及定义的要)按照各种类型数据的格式及定义的要求,逐个输入各条记录的各字段内容。求,逐个输入各条记录的各字段内容。(空值空值 Ctrl+0Ctrl+0)2 2)备注型字段输入时双击)备注型字段输入时双击memomemo,在打开,在打开的窗口中输入内容,最后关闭窗口的窗口中输入内容,最后关闭窗口3 3)通用型字段输入时双击)通用型字段输入时双击gengen,打开,打开窗口后单击窗口后单击“编辑编辑插入对象插入对象”。第23页,此课件共107页哦4 4)表中备注型和通用型字段内容存放在)表中备注型和通用型字段内容存放在一个备注文件中,主文件名和表名相一个备注文件中,主文件名和表名相同,扩展名为同,扩展名为.fpt.fpt。.打开表打开表操作方法:操作方法:菜单:单击菜单:单击“文件文件打开打开”,选择文,选择文件类型件类型“表表”,单击文件名,选择打开,单击文件名,选择打开方式:方式:“独占独占”或或“只读方式只读方式”,单击,单击“确定确定”。第24页,此课件共107页哦命令命令USE USE 盘符盘符 路径路径 说明:省略盘符和路径,则打开默认目说明:省略盘符和路径,则打开默认目录指定文件夹中保存的表。录指定文件夹中保存的表。3.3.关闭表关闭表打开另一个表打开另一个表 打开另一表文件时,系统自动将先打开另一表文件时,系统自动将先前打开的表文件关闭。前打开的表文件关闭。第25页,此课件共107页哦USEUSE命令命令格式:格式:USE USE 功能:关闭当前表。功能:关闭当前表。命令命令:CLOSE ALL|DATABASE:CLOSE ALL|DATABASE.数据库表与自由表之间的转换数据库表与自由表之间的转换 可可以以把把自自由由表表添添加加到到数数据据库库中中转转换换成成数数据据库库表表;也也可可以以把把数数据据库库表表移移出出数数据据库库,转换为自由表。转换为自由表。第26页,此课件共107页哦 操作方法如下:操作方法如下:(1)(1)使用数据库设计器使用数据库设计器 自由表自由表数据库表数据库表 在在数数据据库库设设计计器器空空白白处处右右击击,选选择择“添添加加表表”或或单单击击菜菜单单“数数据据库库添添加加表表”或或单单击击数数据据库库设设计计器器工工具具栏栏“添添加加表表”按按钮钮,在在弹弹出出的的“打打开开”对对话话框框中中选选择择要要添添加加的的表表文件,即可把该表转换为数据库表。文件,即可把该表转换为数据库表。第27页,此课件共107页哦 一个表只能属于某一个数据库,如果一个表只能属于某一个数据库,如果需要用另外一个数据库管理该表文件,必需要用另外一个数据库管理该表文件,必须把该表从数库中移出,转换为自由表,须把该表从数库中移出,转换为自由表,然后才能把它添加到另一个数据库中。然后才能把它添加到另一个数据库中。数据库表数据库表自由表自由表 在数据库设计器中,在数据库设计器中,右击右击要转换的表文要转换的表文件,单击件,单击“删除删除移去移去”或选中要转换的或选中要转换的表,单击表,单击菜单菜单“数据库数据库移去移去”或单击数或单击数据库设计器据库设计器工具栏工具栏的的“移去表移去表”按钮,按钮,弹出对话框,单击弹出对话框,单击“移去移去”按钮。按钮。第28页,此课件共107页哦 说说明明:在在弹弹出出的的对对话话框框中中,单单击击“移移去去”按按钮钮,选选中中的的表表移移出出数数据据库库,变变为为自自由由表表,表表文文件件仍仍保保存存在在原原目目录录中中;单单击击“删删除除”按按钮钮,选选中中的的表表移移出出数数据据库库,并并且且将将该该表表文文件件从从磁磁盘盘上上彻彻底底删删除除,表表及及表表中数据将不存在。中数据将不存在。第29页,此课件共107页哦(2)(2)命令:命令:自由表自由表数据库表数据库表:add tableadd table 表名表名数据库表数据库表自由表自由表:remove tableremove table 表名表名.修改表结构修改表结构 在实际应用中,我们需要对表结构修在实际应用中,我们需要对表结构修改,如:添加、删除字段,修改字段名、改,如:添加、删除字段,修改字段名、字段类型、字段宽度,建立、修改、删除字段类型、字段宽度,建立、修改、删除索引,建立、修改、删除有效性规则。索引,建立、修改、删除有效性规则。第30页,此课件共107页哦 修改表结构首先要打开表设计器修改表结构首先要打开表设计器(1 1)打开表后使用命令)打开表后使用命令 MODIFY STRUCTRUEMODIFY STRUCTRUE 或单击菜单或单击菜单“显示显示表设计器表设计器”(2 2)在在数数据据库库设设计计器器中中右右击击要要修修改改的的表表,单单击击“修改修改”然后进行修改操作。然后进行修改操作。1)1)添加字段(追加和插入)添加字段(追加和插入)2)2)删除字段删除字段 3)3)修改字段属性(字段名、类型、宽度、修改字段属性(字段名、类型、宽度、小数位、有效性、显示)小数位、有效性、显示)第31页,此课件共107页哦第二节第二节 记录的操作记录的操作 表中数据集合成记录,记录的操作表中数据集合成记录,记录的操作是经常使用的数据处理方式。通过前面是经常使用的数据处理方式。通过前面知识的学习,大家知道完成一个操作,知识的学习,大家知道完成一个操作,可以使用命令,也可以使用菜单。我们可以使用命令,也可以使用菜单。我们必须掌握命令。本节将介绍很多相关的必须掌握命令。本节将介绍很多相关的命令,大家一定要记住常用的命令。命令,大家一定要记住常用的命令。第32页,此课件共107页哦一、一、记录操作命令概述记录操作命令概述二、二、记录的显示记录的显示三、三、记录的定位记录的定位四、四、记录的添加记录的添加五、记录的删除五、记录的删除六、六、记录的修改记录的修改七、七、记录与数组间数据的传递记录与数组间数据的传递第33页,此课件共107页哦.格式:格式:范围范围 条件条件 字段名表字段名表.说明:说明:(1)(1)范围:指定要操作的记录。范围:指定要操作的记录。表示方法:表示方法:ALLALL:所有记录:所有记录NEXT NNEXT N:从当前记录开始,后面的:从当前记录开始,后面的 N N条记条记录(包括当前记录)录(包括当前记录)RECORD NRECORD N:第:第N N条记录。条记录。一、记录操作命令概述一、记录操作命令概述第34页,此课件共107页哦RESTREST:当前记录后的全部记录(包:当前记录后的全部记录(包括当前记录)括当前记录)(2)(2)字段名表:指定操作的字段字段名表:指定操作的字段 格式:格式:FIELDS FIELDS (3)(3)条件:指定操作的记录应满足的条件条件:指定操作的记录应满足的条件 格式:格式:FOR|WHILE FOR|WHILE 返回返回第35页,此课件共107页哦说明:说明:a)FOR a)FOR 默默认认范范围围ALLALL。WHILE WHILE 默默认认范范围围RESTREST,而而且且找找到到第第一一条条不不满满足足条条件的记录就停止操作。件的记录就停止操作。b)b)两两种种条条件件格格式式可可以以同同时时使使用用,WHILEWHILE条条件件优先。优先。第36页,此课件共107页哦二、记录的显示二、记录的显示.命令命令LIST|DISPLAY FIELDS LIST|DISPLAY FIELDS FOR FOR OFF OFF TO FILE TO FILE 说明:说明:1 1)省略)省略FIELDS FIELDS 显示全部字显示全部字段。段。2 2)省略范围、条件时,)省略范围、条件时,LISTLIST显示全部显示全部记录,记录,DISPLAYDISPLAY显示当前记录。显示当前记录。第37页,此课件共107页哦3 3)OFFOFF不显示记录号,省略则在各记录不显示记录号,省略则在各记录前显示记录号。前显示记录号。4 4)TO FILE TO FILE :显示结果存入指:显示结果存入指定的文本文件。定的文本文件。例:例:(1)(1)显示所有职工的全部信息显示所有职工的全部信息(2)(2)显示所有职工的职工号,姓名和基显示所有职工的职工号,姓名和基本工资本工资(3)(3)显示已婚显示已婚(未婚未婚)职工的所有信息职工的所有信息第38页,此课件共107页哦(4)(4)显示姓显示姓“王王”的职工的所有信息的职工的所有信息(5)(5)显示名字中含有显示名字中含有“明明”这个字的职工信这个字的职工信息息(6)(6)显示职工号的尾数字是偶数的所有信息显示职工号的尾数字是偶数的所有信息(7)(7)显示在显示在19921992年之前参加工作的职工信息年之前参加工作的职工信息(8)(8)显示基本工资大于显示基本工资大于500500的女职工的姓名、的女职工的姓名、性别和基本工资性别和基本工资 (9)(9)显示第显示第5 5条记录条记录第39页,此课件共107页哦.菜单菜单打开表后,单击打开表后,单击“显示显示浏览或编辑浏览或编辑”。.数据库设计器数据库设计器(1)(1)双击要显示的表。双击要显示的表。(2)(2)右击要显示的表,选择右击要显示的表,选择“浏览浏览”。返回返回第40页,此课件共107页哦 在实际应用中,我们经常会对某条在实际应用中,我们经常会对某条记录进行操作,操作之前我们需要先定记录进行操作,操作之前我们需要先定位到该记录上。位到该记录上。.相关概念相关概念(1)(1)记录号:系统按照用户输入的先后记录号:系统按照用户输入的先后顺序,给每一条记录一个唯一的标号,顺序,给每一条记录一个唯一的标号,用于标识记录输入时的先后顺序。用于标识记录输入时的先后顺序。三、记录的定位三、记录的定位第41页,此课件共107页哦(2)(2)记录指针记录指针:是一个指示器,它始终指是一个指示器,它始终指向当前表中正在操作处理的那条记录,向当前表中正在操作处理的那条记录,此记录称为当前记录。此记录称为当前记录。(3)(3)定位:通过移动记录指针改变当前记定位:通过移动记录指针改变当前记录的操作。录的操作。.绝对定位绝对定位 相对定位相对定位.绝对定位:直接将表中的一条记录定绝对定位:直接将表中的一条记录定位成当前记录。位成当前记录。分类分类第42页,此课件共107页哦(1 1)命令)命令格式:格式:GO GO 记录号记录号GO TOPGO TOP:首记录设置为当前记录。:首记录设置为当前记录。GO BOTTOMGO BOTTOM:尾记录设置为当前记录。:尾记录设置为当前记录。(2 2)菜单)菜单 打开表,单击打开表,单击“显示显示浏览浏览”,单击,单击“表表转到记录转到记录记录号记录号”补充函数:补充函数:recno()recno()当前记录号。当前记录号。reccount()reccount()表中记录个数。表中记录个数。第43页,此课件共107页哦4.4.相对定位:从当前开始,向前或向后移动记录相对定位:从当前开始,向前或向后移动记录指针,改变当前记录。指针,改变当前记录。(1)(1)命令:命令:SKIP SKIP 数值表达式数值表达式 说明:说明:1)1)数值表达式值为整数,正数向后数值表达式值为整数,正数向后移动,负数向前移动。移动,负数向前移动。2)2)省略默认省略默认1 1。(2)(2)菜单:打开表菜单:打开表,单击单击“显示显示浏览浏览”,再单击再单击“表表转到记录转到记录上一个或下一上一个或下一个个”。第44页,此课件共107页哦补充函数:补充函数:BOF()BOF(),EOF()EOF().BOF().BOF()功能:测试当前表中的记录指针是否功能:测试当前表中的记录指针是否指向指向第一条记录的前面位置第一条记录的前面位置,若是就返回,若是就返回.T.T.;否则返回;否则返回.F.F.。若没有打开表文件,。若没有打开表文件,函数返回函数返回.F.F.;若打开的表文件没有记录,;若打开的表文件没有记录,函数返回函数返回.T.T.。返回返回第45页,此课件共107页哦.EOF().EOF()功能:测试当前表中的记录指针是否功能:测试当前表中的记录指针是否指向指向最后一条记录的后面位置最后一条记录的后面位置,若是就,若是就返回返回.T.T.;否则返回;否则返回.F.F.。若没有打开表文。若没有打开表文件,函数返回件,函数返回.F.F.;若打开的表文件没有记;若打开的表文件没有记录,函数返回录,函数返回.T.T.。第46页,此课件共107页哦四、记录的添加四、记录的添加1.1.追加:在表的尾部添加记录追加:在表的尾部添加记录 操作方式操作方式 (1)(1)命令:命令:格式:格式:APPEND BLANKAPPEND BLANK 说明:选用说明:选用BLANKBLANK在尾部添加一条空白在尾部添加一条空白记录记录 (2)(2)菜单:打开表,单击菜单:打开表,单击“显示显示浏浏览览”,再单击,再单击“表表追加新记录追加新记录”,用,用户输入数据。户输入数据。第47页,此课件共107页哦2 2从另一个表中选取数据追加记录从另一个表中选取数据追加记录操作方法:操作方法:(1)(1)命令命令格式:格式:APPEND FROM APPEND FROM FIELDS FIELDS FOR FOR 功能:从指定的表文件中读入数据,功能:从指定的表文件中读入数据,并添加到当前表文件的末尾。并添加到当前表文件的末尾。第48页,此课件共107页哦说明:说明:1 1)被添加的数据来源于)被添加的数据来源于FROMFROM后指定的后指定的表,先将要追加记录的表打开,再使用表,先将要追加记录的表打开,再使用命令。命令。2 2)追加时根据同名原则进行,把)追加时根据同名原则进行,把FROMFROM后后指定表中的字段与当前表的字段进行比指定表中的字段与当前表的字段进行比较,同名则将符合条件的数据追加。较,同名则将符合条件的数据追加。(2)(2)菜单:打开表菜单:打开表,单击单击“显示显示浏览浏览”,再单击再单击“表表追加记录追加记录”第49页,此课件共107页哦3.3.插入空白记录插入空白记录格式:格式:INSERT BEFORE BLANKINSERT BEFORE BLANK说明:说明:1 1)指定)指定BEFOREBEFORE在当前记录前插入记录,在当前记录前插入记录,否则在当前记录后插入记录否则在当前记录后插入记录2 2)BLANKBLANK插入一条空白记录插入一条空白记录 返回返回第50页,此课件共107页哦五、记录的删除五、记录的删除 记录的删除也是表维护的一项经常记录的删除也是表维护的一项经常性的工作,因为删除意味着数据的消性的工作,因为删除意味着数据的消失,所以对记录的删除操作比较慎重。失,所以对记录的删除操作比较慎重。VFPVFP的删除可分为的删除可分为逻辑删除和物理删除逻辑删除和物理删除两两种操作,逻辑删除可以恢复,而物理删种操作,逻辑删除可以恢复,而物理删除不能恢复。除不能恢复。.逻辑删除:就是给指定的记录作删逻辑删除:就是给指定的记录作删除标记除标记“*”“*”,记录仍存在,又称假删除。,记录仍存在,又称假删除。第51页,此课件共107页哦(1)(1)命令命令格式:格式:DELETE DELETE FOR FOR 功能:对当前表中指定范围内满足条功能:对当前表中指定范围内满足条件的记录作件的记录作删除标记删除标记说明:省略范围和条件仅逻辑删除当说明:省略范围和条件仅逻辑删除当前记录。前记录。(2)(2)菜单:打开表,单击菜单:打开表,单击“显示显示浏浏览览”,单击,单击“表表删除记录删除记录”,在对话,在对话框中设置各项内容。框中设置各项内容。第52页,此课件共107页哦.恢复逻辑删除:将记录的删除标记恢复逻辑删除:将记录的删除标记去掉,恢复为正常记录。去掉,恢复为正常记录。(1)(1)命令命令格式格式:RECALLRECALL FOR FOR 功能功能:把当前表中指定范围内满足条把当前表中指定范围内满足条件的记录的删除标记去掉件的记录的删除标记去掉说明说明:省略范围和条件仅恢复逻辑删除省略范围和条件仅恢复逻辑删除的当前记录的当前记录第53页,此课件共107页哦(2)(2)菜单:打开表,单击菜单:打开表,单击“显示显示浏浏览览”,单击,单击“表表恢复记录恢复记录”,在对话,在对话框中设置各项内容框中设置各项内容.物理删除:将当前表被逻辑删除的物理删除:将当前表被逻辑删除的记录真正清除,不能再恢复。记录真正清除,不能再恢复。(1)(1)命令命令格式:格式:PACKPACK第54页,此课件共107页哦(2)(2)菜单菜单:打开表,单击打开表,单击“显示显示浏览浏览”,单击单击“表表彻底删除彻底删除”,单击,单击“是是”.全删除全删除格式:格式:ZAPZAP功能:将当前表中的所有记录真正删功能:将当前表中的所有记录真正删除,不能恢复。除,不能恢复。相当于相当于:DELETE ALL:DELETE ALL PACK PACK返回返回第55页,此课件共107页哦 1.1.浏览修改:在浏览窗口操作浏览修改:在浏览窗口操作(1)(1)命令命令格式格式:BROWSE FIELDS:BROWSE FIELDS FOR FOR (2)(2)菜单:打开表,单击菜单:打开表,单击“显示显示浏览浏览”注意:打开浏览窗口后,用户可直接修注意:打开浏览窗口后,用户可直接修改。改。六、记录的修改六、记录的修改第56页,此课件共107页哦2.2.替换修改:大量数据有规律的修改替换修改:大量数据有规律的修改(1)(1)命令命令格式:格式:REPLACE REPLACE WITH WITH,WITH WITH 2.FOR FOR 功能:用指定表达式的值替换当前表功能:用指定表达式的值替换当前表中满足条件记录的指定字段的值。中满足条件记录的指定字段的值。第57页,此课件共107页哦说明:说明:1 1)省略范围、条件,仅替换修改当前)省略范围、条件,仅替换修改当前记录。记录。2 2)命令执行后,修改自动完成,适用)命令执行后,修改自动完成,适用于程序设计。于程序设计。3 3)指定表达式的类型必须与字段类型)指定表达式的类型必须与字段类型相同相同(2)(2)菜单:打开表,单击菜单:打开表,单击“显示显示浏览浏览”单击单击“表表替换字段替换字段”,指定对话框要,指定对话框要求的内容求的内容第58页,此课件共107页哦1 1表结构的复制表结构的复制格式:格式:COPY STRUCTURE TO COPY STRUCTURE TO FIELDS FIELDS 功能:复制当前表文件的结构作为新表文件的功能:复制当前表文件的结构作为新表文件的结构。结构。说明:说明:(1)(1)命令执行前,必须打开被复制的表。命令执行前,必须打开被复制的表。(2)(2)执行后,生成一个新的自由表,只有结构。执行后,生成一个新的自由表,只有结构。(3)FIELDS(3)FIELDS :确确定定新新表表结结构构。省省略略,则则新新表和原表结构相同。表和原表结构相同。七、表的复制七、表的复制第59页,此课件共107页哦2.2.表的复制表的复制格式:格式:COPY TO COPY TO FIELDS FIELDS FOR|WHILE FOR|WHILE 功能:将当前打开的表文件全部或部分记录复功能:将当前打开的表文件全部或部分记录复制生成一个新的自由表。制生成一个新的自由表。说明说明(1)(1)命令执行前,必须打开被复制的表。命令执行前,必须打开被复制的表。(2)(2)生生成成的的新新表表是是自自由由表表。FIELDS FIELDS 决决定定表表的的结结构构。记记录录由由条条件件和和范范围围决决定定。若若全全部省略,新表和原表完全相同。部省略,新表和原表完全相同。第60页,此课件共107页哦1.1.表的当前记录复制到数组表的当前记录复制到数组格式:格式:SCATTER FIELDS SCATTER FIELDS|FIELDS LIKE|EXCEPT FIELDS LIKE|EXCEPT MEMO TO MEMO TO BLANK BLANK 说明:说明:(1)(1)选用选用BLANKBLANK表示建立一组空内存变量。表示建立一组空内存变量。(2)(2)用用 TO TO ,自动建立数组或自动扩大,自动建立数组或自动扩大虽已存在但不够大的数组。虽已存在但不够大的数组。(3)(3)省略省略FIELDSFIELDS子句,只传送除备注型字段外的子句,只传送除备注型字段外的所有字段,若要传送,用所有字段,若要传送,用MEMOMEMO选项。选项。八、记录与数组间数据的传送八、记录与数组间数据的传送第61页,此课件共107页哦2.2.数组数据复制到表的当前记录数组数据复制到表的当前记录格式:格式:GATHER FROM GATHER FROM FIELDS FIELDS|FIELDS LIKE|EXCEPT FIELDS LIKE|EXCEPT MEMO MEMO说明:说明:(1)(1)操作时先确定当前记录。操作时先确定当前记录。(2)(2)数组元素多于字段数,则多的不传;如果少,多数组元素多于字段数,则多的不传;如果少,多出的值不变。出的值不变。(3)(3)若使用若使用 FIELDSFIELDS子句,仅对其中所列字段替换。子句,仅对其中所列字段替换。(4)(4)省略省略 MEMOMEMO,将忽略,将忽略M M型字段。型字段。第62页,此课件共107页哦第三节第三节 排序、索引与查询排序、索引与查询 之前我们使用的表的记录,是根据用户之前我们使用的表的记录,是根据用户输入的顺序排列。有时,我们需要按另一种输入的顺序排列。有时,我们需要按另一种顺序,这可通过排序实现;在数据资源的管顺序,这可通过排序实现;在数据资源的管理过程中,使用最频繁的操作莫过于查询满理过程中,使用最频繁的操作莫过于查询满足一定条件的一系列数据,从而为日常决策足一定条件的一系列数据,从而为日常决策提供足够的判断依据,为了提高查询速度,提供足够的判断依据,为了提高查询速度,VFPVFP提供了索引。提供了索引。第63页,此课件共107页哦1.1.概念:将表中记录按指定字段值的大小重新排列。概念:将表中记录按指定字段值的大小重新排列。2.2.操作方法操作方法命令:命令:SORT TO SORT TO ON ON /A|/D/C 1/A|/D/C,/A|/D/C.2/A|/D/C.ASCENDING|DESCENDINGASCENDING|DESCENDING FOR|WHILE FOR|WHILE 1 FIELDS FIELDS 一、一、排序排序第64页,此课件共107页哦说明:说明:(1)(1)排序操作不能改变原表中记录的存储位置,结果排序操作不能改变原表中记录的存储位置,结果保存在新的自由表。保存在新的自由表。(2)/A(2)/A 表示升序表示升序 ,/D/D 表示降序,表示降序,/C/C 表示不表示不区分大小写区分大小写(3)(3)当有多个排序字段时,先按字段当有多个排序字段时,先按字段1 1的值排列,的值排列,值相同的,再按字段值相同的,再按字段2 2的值排列。的值排列。(4)ASCENDING(4)ASCENDING或或DESCENDINGDESCENDING指除用指除用/A/A或或/D/D指明了指明了排序方式的字段外,所有其他字段排序顺序。排序方式的字段外,所有其他字段排序顺序。第65页,此课件共107页哦 学号 姓名性别年龄分数101李小明男1881102张红女1790103赵伟华男2074104沈小慧女1985学号 姓名性别年龄分数101李小明男1881104沈小慧女1985102张红女1790103赵伟华男2074记录号1234记录号1423按按姓名姓名升序排序升序排序二、索引二、索引第66页,此课件共107页哦.索引概述索引概述索引:按照索引关键字的值排列的对应记索引:按照索引关键字的值排列的对应记录号的序列。录号的序列。索引文件:存放索引的文件。索引文件:存放索引的文件。索引文件的分类:根据索引文件中存放索引文件的分类:根据索引文件中存放索引的数目,分为:索引的数目,分为:单索