




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Visual FoxPro命令概述命令概述Visual FoxPro命令的语法格式命令的语法格式n 范围子句:范围子句:all:对表的全部记录进行操作对表的全部记录进行操作next n:对从当前记录起的连续对从当前记录起的连续n条记录进行操作条记录进行操作record n:只对第只对第n个记录进行操作个记录进行操作rest:从当前记录开始到表尾的所有记录从当前记录开始到表尾的所有记录 n条件子句:条件子句:nfields子句:子句:各个字段名之间用逗号隔开,若不选用该子句,则默认为选择所各个字段名之间用逗号隔开,若不选用该子句,则默认为选择所有字段。有字段。例如:例如:list all for
2、 list all for 性别性别=男男 学号学号, ,姓名姓名, ,出生日期出生日期for :选择表中符合条件的所有记录选择表中符合条件的所有记录while :选择符合条件的记录,直到第一个不符合条件的记录为止选择符合条件的记录,直到第一个不符合条件的记录为止Visual FoxPro命令概述命令概述Visual FoxPro命令的书写规则如下:命令的书写规则如下:命令中各个子句以空格隔开,次序可任意。命令中各个子句以空格隔开,次序可任意。关键字一律英文,不区分大小写,可缩写为前关键字一律英文,不区分大小写,可缩写为前4个以上的字母。个以上的字母。例如例如fields可简写为可简写为fie
3、l、field。命令行长度命令行长度8192个字符。如一行写不下,使用续行符个字符。如一行写不下,使用续行符“;”并敲并敲回车键,将剩余部分续写在下一行。回车键,将剩余部分续写在下一行。命令中所有符号除汉字外,一律西文符号命令中所有符号除汉字外,一律西文符号(英文标点符号英文标点符号)。命令注释命令注释: 注释语句是非执行语句,只对程序作解释说明,不执注释语句是非执行语句,只对程序作解释说明,不执行任何操作。行任何操作。 格式:格式: & 注释内容注释内容清除命令:清除命令: Clear &清除显示区域中的内容清除显示区域中的内容Visual FoxPro命令的语法格式命令的语
4、法格式 例如:例如:list all for list all for 性别性别=男男 学号学号, ,姓名姓名, ,出生日期出生日期开发一个应用系统需要创建一个项目,开发一个应用系统需要创建一个项目,项目项目是开发是开发应用系统所产生的大量数据、文档、程序和对象的集合。应用系统所产生的大量数据、文档、程序和对象的集合。(.pjx.pjx) ) 数据库数据库是存储和管理表、表与表之间的关联、视图、是存储和管理表、表与表之间的关联、视图、查询等对象的容器。(查询等对象的容器。(.dbc.dbc) )表表是处理数据、建立关系数据库和应用程序的基本是处理数据、建立关系数据库和应用程序的基本单元,用于存
5、储数据信息。单元,用于存储数据信息。 (.dbf).dbf)项目、数据库、表之间的关系项目、数据库、表之间的关系Visual FoxproVisual Foxpro中的表是以二维表格(即由行和列构成)中的表是以二维表格(即由行和列构成)的形式存放的。表中的每一列称为一个的形式存放的。表中的每一列称为一个字段字段,每一行称为一,每一行称为一条条记录记录。一个表对应于磁盘上的一个扩展名为。一个表对应于磁盘上的一个扩展名为.DBF.DBF的文件,的文件,如果表中有如果表中有备注型或通用型备注型或通用型字段,则系统会自动建立一个与字段,则系统会自动建立一个与表同名而扩展名为表同名而扩展名为.FPT.F
6、PT的文件。的文件。表的概念表的概念Visual FoxProVisual FoxPro中表分为中表分为数据库表数据库表和和自由表自由表两种。两种。它们在形式上完全相同,属于某个数据库的表称为数据库它们在形式上完全相同,属于某个数据库的表称为数据库表,不属于任何数据库而独立存在的表称为自由表。表,不属于任何数据库而独立存在的表称为自由表。数据库表具有一些自由表没有的属性,如主关键字、触发数据库表具有一些自由表没有的属性,如主关键字、触发器、默认值、永久表关系等。器、默认值、永久表关系等。 两者可相互转换:自由表可加入到某个数据库中,便成了两者可相互转换:自由表可加入到某个数据库中,便成了数据库
7、表,从而受到数据库的制约并且获得新的特性;将数据数据库表,从而受到数据库的制约并且获得新的特性;将数据库表从数据库中移出,便成了自由表,也将失去某些特性。库表从数据库中移出,便成了自由表,也将失去某些特性。本章主要介绍自由表的操作。本章主要介绍自由表的操作。表的概念表的概念表(自由表)文件的建立表(自由表)文件的建立表的创建步骤:表的创建步骤: 1 1、设计表结构、设计表结构 2 2、创建表结构、创建表结构 3 3、录入记录数据、录入记录数据需要说明的是:如果创建表时数据库是打开的,则需要说明的是:如果创建表时数据库是打开的,则创建的表默认是属于当前数据库的数据库表,否则创建创建的表默认是属于
8、当前数据库的数据库表,否则创建的表为自由表。的表为自由表。 1 1、设计表结构、设计表结构 (1)(1)字段名字段名 字段名的命名规则:允许由字母、汉字、数字和下划线组成,但必须字段名的命名规则:允许由字母、汉字、数字和下划线组成,但必须以字母、数字或汉字开头。自由表中的字段名最多为以字母、数字或汉字开头。自由表中的字段名最多为1010个字符,数据库表个字符,数据库表中字段名最多为中字段名最多为128128个字符。个字符。(2)(2)字段类型字段类型(3)(3)字段宽度字段宽度 用以表明该字段允许存放的最大字节数或数值位数。除用以表明该字段允许存放的最大字节数或数值位数。除字符型字符型、数值数
9、值型型和和浮点型浮点型外,其它类型字段宽度是固定不变的。外,其它类型字段宽度是固定不变的。(4)(4)小数位数小数位数 只有数值型、浮点型和双精度型数据可以规定小数位数。小数位数至少只有数值型、浮点型和双精度型数据可以规定小数位数。小数位数至少比字段的宽度值小比字段的宽度值小2 2。(5)(5)是否允许为空是否允许为空 表示是否允许字段接受空值表示是否允许字段接受空值(NULL)(NULL)。空值是指无确定的值,它与空字符。空值是指无确定的值,它与空字符 串、数值串、数值0 0等是不同的。注意,作为关键字的字段是不允许为空的。等是不同的。注意,作为关键字的字段是不允许为空的。 表文件的建立表文
10、件的建立学生基本信息表的结构学生基本信息表的结构 表文件的建立表文件的建立2 2、建立表结构、建立表结构 通过表设计器通过表设计器 通过表向导通过表向导打开表设计器的方法打开表设计器的方法l 菜单方式:菜单方式:“文件文件”“新建新建”,或工具栏上的,或工具栏上的“新建新建”按钮,打开按钮,打开“新建新建”对话框。对话框。l 命令方式:命令方式:create 路径路径 【功能】在指定路径下创建一个默认扩展名为【功能】在指定路径下创建一个默认扩展名为.dbf的表的表文件。如路径缺省,则创建在系统默认路径下;如表名缺文件。如路径缺省,则创建在系统默认路径下;如表名缺省,则打开省,则打开 “创建创建
11、”对话框。对话框。表文件的建立表文件的建立注意注意 :1、建立文件夹(用于保存表文件)。、建立文件夹(用于保存表文件)。2、设置存储表的文件夹为系统默认目录、设置存储表的文件夹为系统默认目录例如:例如:create e:vf文件文件学生基本信息表学生基本信息表例如:例如:create 学生基本信息表学生基本信息表3 3、录入数据、录入数据1)1)输入记录输入记录 可以选择可以选择“编辑编辑”和和“浏览浏览”两种窗口方式录入记录。在这两种窗口方式录入记录。在这两种方式下,都可以浏览显示记录或直接编辑修改记录的内容。两种方式下,都可以浏览显示记录或直接编辑修改记录的内容。 如果在创建表结构时,没有
12、立即输入所用的数据,以后再向如果在创建表结构时,没有立即输入所用的数据,以后再向表中输入数据时,可以用表中输入数据时,可以用追加方式追加方式在表的最后一条记录之后继续在表的最后一条记录之后继续输入数据。方法如下:输入数据。方法如下: 打开要输入数据的表。打开要输入数据的表。 选择选择“显示显示”菜单,选择菜单,选择“浏览浏览”,进入表记录,进入表记录“浏览浏览”窗窗口。口。 选择选择“显示显示”菜单下的菜单下的“追加方式追加方式” ” 向表尾追加新记录。向表尾追加新记录。自由表的创建自由表的创建3 3、录入数据、录入数据2) 2) 记录输入要点记录输入要点逻辑型字段只能接收逻辑型字段只能接收T
13、 T,Y Y,F F,N N (不区分大小写)。(不区分大小写)。T T与与Y Y同义,若键入同义,若键入Y Y也显示也显示T;T;同样同样F F与与N N同义,若键入同义,若键入N N也显示也显示F F。日期型数据必须与系统当前设置的日期格式相符,默认按日期型数据必须与系统当前设置的日期格式相符,默认按美国日期格式:美国日期格式:mm/dd/yymm/dd/yy输入。输入。备注型字段的输入备注型字段的输入 备注型字段的内容为空时,显示备注型字段的内容为空时,显示memomemo。 当光标停留在备注型字段的当光标停留在备注型字段的memomemo上,如果不输入数据可按上,如果不输入数据可按回车
14、键跳过;如果输入数据用鼠标双击打开相应的字段编辑回车键跳过;如果输入数据用鼠标双击打开相应的字段编辑窗口即可。窗口即可。 某记录的备注型或通用型字段非空时,显示为某记录的备注型或通用型字段非空时,显示为MemoMemo。自由表的创建自由表的创建通用型字段的输入通用型字段的输入 通用型字段的内容为空时,显示通用型字段的内容为空时,显示gengen。 当光标停留在备注型或通用型字段的当光标停留在备注型或通用型字段的gengen上时,如果不输上时,如果不输 入数据可按回车键跳过;如果输入数据用鼠标双击打开相应的入数据可按回车键跳过;如果输入数据用鼠标双击打开相应的字段编辑窗口。字段编辑窗口。 打开打
15、开“编辑编辑”菜单,选择菜单,选择“插入对象插入对象”,选择,选择“新建新建”或或“由文件创建由文件创建”选项。选项。 某记录的通用型字段非空时,显示为某记录的通用型字段非空时,显示为GenGen。 【说明【说明】如果不需要将文件实际插入到表中,可选择如果不需要将文件实际插入到表中,可选择“链接链接”方式。方式。这样表中就只保存对所链接对象的引用说明,而非对象的全部这样表中就只保存对所链接对象的引用说明,而非对象的全部数据。如果链接的源文件发生变化,这种改变也会在表中得到数据。如果链接的源文件发生变化,这种改变也会在表中得到反映。反映。也可以将某图片通过也可以将某图片通过“复制复制- -粘贴粘
16、贴”的方法直接粘贴到通用型的方法直接粘贴到通用型字段的编辑窗口中。字段的编辑窗口中。若要删除已存入的图形,可先打开通用型字段编辑窗口,然若要删除已存入的图形,可先打开通用型字段编辑窗口,然后选择后选择“编辑编辑”菜单下的菜单下的“清除清除”命令。命令。、打开表、打开表 菜单方式:菜单方式:“文件文件”“打开打开”选择文件类型选择文件类型“表表” 命令方式:命令方式: use 路径路径 noupdate exclusive |sharedn 功能:功能:打开指定路径下的表文件。打开指定路径下的表文件。如果打开的表中包含备注型或通用型字如果打开的表中包含备注型或通用型字 段,则打开该表的同时自动打
17、开与表同名的扩展名为段,则打开该表的同时自动打开与表同名的扩展名为.ftp.ftp的备注文件。的备注文件。n 说明:说明: noupdate指定以只读方式打开表,即不允许对表进行修改,指定以只读方式打开表,即不允许对表进行修改, 默认为可读写,即允许修改。默认为可读写,即允许修改。 exclusive指定以独占方式打开表,即不允许其他用户在同指定以独占方式打开表,即不允许其他用户在同 一时刻使用该表(默认一时刻使用该表(默认,修改:修改:“工具工具|选项选项|数据数据”); shared指定以共享方式打开表。即允许其他用户在同一时刻指定以共享方式打开表。即允许其他用户在同一时刻 使用该表。使用
18、该表。n 注意:注意: 共享方式下表设计器是只读状态,不能修改里面的内容。共享方式下表设计器是只读状态,不能修改里面的内容。 2、关闭表、关闭表 关闭表的浏览窗口并不能关闭该表,可以使用以下方法关闭表:关闭表的浏览窗口并不能关闭该表,可以使用以下方法关闭表:菜单方式:菜单方式: 选择选择“窗口窗口|数据工作期数据工作期”菜单项菜单项 选择选择“文件文件|退出退出”菜单项,退出菜单项,退出vf系统同时关闭所有已打开的文件系统同时关闭所有已打开的文件(包括表包括表)。 命令方式:命令方式: use 功能:关闭当前工作区中已经打开的表。功能:关闭当前工作区中已经打开的表。 close all 功能:
19、关闭所有打开的数据库、表、索引、项目等各种类型文件。功能:关闭所有打开的数据库、表、索引、项目等各种类型文件。 clear all 功能:关闭所有打开的数据库和表等文件,释放所有的内存变量。功能:关闭所有打开的数据库和表等文件,释放所有的内存变量。 quit 功能:退出功能:退出visual foxpro系统同时关闭所有已打开的文件。系统同时关闭所有已打开的文件。 当用户又打开一个新表时,系统会自动将原来打开的表关闭,视新表为当当用户又打开一个新表时,系统会自动将原来打开的表关闭,视新表为当前工作区的当前表。前工作区的当前表。表的复制:表的复制:对一个已有的表文件进行复制,可以根据需要只复制对
20、一个已有的表文件进行复制,可以根据需要只复制表结构表结构或复制或复制表结构和记录数据表结构和记录数据两部分内容。两部分内容。1. 复制表的结构复制表的结构格式:格式:copy structure to fields 功能:功能:将当前表的结构复制到指定的表中。仅复制当前表的结构,将当前表的结构复制到指定的表中。仅复制当前表的结构,不复制其记录数据。不复制其记录数据。说明:说明:若给出若给出fields 选项,则生成的空表文件中只含有选项,则生成的空表文件中只含有中给出的字段,若省略此项,则复制的中给出的字段,若省略此项,则复制的空表空表文件的结文件的结构和当前表相同。构和当前表相同。【例】【例
21、】 通过复制通过复制“学生基本信息表学生基本信息表”的结构,创建新表的结构,创建新表“学生成绩表学生成绩表”,新表只包括新表只包括“学号学号”、“姓名姓名”、“入学成绩入学成绩”三个字段。三个字段。use 学生基本信息表学生基本信息表copy structure to 学生成绩表学生成绩表 fields 学号学号, 姓名姓名, 入学成绩入学成绩2.复制表文件复制表文件 n菜单方式:菜单方式:选择选择“文件文件|导出导出”,打开,打开“导出导出”对话框导出数据,即复制文件。对话框导出数据,即复制文件。n命令方式:命令方式:copy to fields for while 功能:将当前表中的数据与
22、结构同时复制到指定的表中。功能:将当前表中的数据与结构同时复制到指定的表中。说明:说明:u新生成的表结构中的字段顺序由新生成的表结构中的字段顺序由fields选项选项确定确定.u和和for 决定了对哪些记录进行复制。省略这些子句,决定了对哪些记录进行复制。省略这些子句,则复制当前表的所有记录。则复制当前表的所有记录。有四种形式:有四种形式:all 所有记录所有记录nextn 从当前记录起的连续从当前记录起的连续n条记录条记录recordn 第第n个记录个记录rest 从当前记录起到最后一个记录止的所有记录从当前记录起到最后一个记录止的所有记录例例1 1:将学生基本信息表中男生的记录复制到表:将
23、学生基本信息表中男生的记录复制到表boy.dbfboy.dbf中。中。例例2 2:将:将“学生基本信息表学生基本信息表”中女生的学号、姓名、入学成绩中女生的学号、姓名、入学成绩到到e e盘上的新表盘上的新表girlscore.dbfgirlscore.dbf中。中。显示或打印当前表文件结构显示或打印当前表文件结构格式:格式:list|display structure to printer prompt|to file 说明:说明:(1)to printer表示在显示的同时将显示内容送往打印机打印。若表示在显示的同时将显示内容送往打印机打印。若包括包括prompt,则在打印前显示一个对话框,用
24、于设置打印机,包括,则在打印前显示一个对话框,用于设置打印机,包括打印份数、打印页码等。打印份数、打印页码等。 (2) to file ,则在显示的同时将显示内容输出到指定的文,则在显示的同时将显示内容输出到指定的文本文件中。本文件中。【例】显示【例】显示“学生基本信息表学生基本信息表”的表结构。的表结构。在命令窗口中输入以下命令,屏幕显示如课本图在命令窗口中输入以下命令,屏幕显示如课本图3-13所示。所示。use 学生基本信息表学生基本信息表&打开学生基本信息表打开学生基本信息表list stru &在系统主窗口中显示出当前表的结构在系统主窗口中显示出当前表的结构 n 注意:
25、注意:(1)(1)修改字段类型和宽度可能会造成数据丢失。修改字段类型和宽度可能会造成数据丢失。(2)(2)修改后可存盘退出,也可放弃修改退出修改后可存盘退出,也可放弃修改退出存盘退出:存盘退出:Ctrl+W或确定或确定放放弃修改弃修改: Ctrl+Q或或Esc 表中记录可以在表记录的表中记录可以在表记录的“浏览浏览”或或“编辑编辑”窗口窗口中显示,也可以在中显示,也可以在Visual FoxPro系统主窗口中显示。系统主窗口中显示。在系统主窗口中显示时,只能浏览记录,不能修改记录。在系统主窗口中显示时,只能浏览记录,不能修改记录。在表记录的在表记录的“浏览浏览”和和“编辑编辑”窗口中显示时,不
26、但可窗口中显示时,不但可以浏览记录,还可以对记录数据进行编辑修改。以浏览记录,还可以对记录数据进行编辑修改。1. 菜单方式:菜单方式:u 打开需要显示的表打开需要显示的表u 选择选择【显示】【显示】|【浏览【浏览】,打开记录浏览窗口,显示当前表中,打开记录浏览窗口,显示当前表中的记录。的记录。 还可以选择还可以选择【显示】【显示】|【编辑【编辑】,在记录编辑窗口中显示当前,在记录编辑窗口中显示当前表中的记录。表中的记录。说明:说明: 无论是在表记录无论是在表记录“编辑编辑”窗口还是在窗口还是在“浏览浏览”窗口,都可以窗口,都可以对表中的数据进行显示,并允许对数据进行编辑修改。对表中的数据进行显
27、示,并允许对数据进行编辑修改。 对数据修改完毕后,单击窗口的对数据修改完毕后,单击窗口的“关闭关闭”按钮或按按钮或按“Ctrl+W”组合键可保存并关闭窗口,按组合键可保存并关闭窗口,按“Esc”键或键或“Ctrl+Q”组合键放弃修改并关闭窗口。组合键放弃修改并关闭窗口。2. 命令方式命令方式:格式格式1:list|display fields for while to printer prompt|to file off功能:在功能:在vf系统主窗口显示当前表的指定范围内满足条件的记录。系统主窗口显示当前表的指定范围内满足条件的记录。说明:说明:此命令只显示记录,不能对记录进行修改。此命令只显
28、示记录,不能对记录进行修改。范围为范围为all、next 、record 、rest其中之一。其中之一。如果选择如果选择fields,则仅显示字段名表中列出的字段。缺,则仅显示字段名表中列出的字段。缺省时,默认为显示所有字段,但不显示备注型和通用型字段的内容。省时,默认为显示所有字段,但不显示备注型和通用型字段的内容。字段名表中各个字段名之间用英文逗号分隔开。字段名表中各个字段名之间用英文逗号分隔开。如果选用了如果选用了for 但没有明确指出范围,范围认为但没有明确指出范围,范围认为all。命令中指定命令中指定off时,不显示记录号,否则在记录前面给出记录号。时,不显示记录号,否则在记录前面给
29、出记录号。当当“范围范围”和和“条件条件”同时缺省时,同时缺省时,list命令连续显示表中全部记命令连续显示表中全部记录,即默认范围为录,即默认范围为all;而;而display命令则仅显示当前的一条记录命令则仅显示当前的一条记录【例】就【例】就学生基本信息表学生基本信息表,写出进行如下操作的命令,写出进行如下操作的命令(1) (1) 显示当前记录显示当前记录(2) (2) 显示所有记录显示所有记录(3) (3) 显示前显示前5 5条记录条记录(4) (4) 显示记录号为奇数的记录显示记录号为奇数的记录(5) (5) 显示女团员的记录显示女团员的记录(6) (6) 显示显示1818岁以上(包括
30、岁以上(包括1818岁)的男生的学号、姓名岁)的男生的学号、姓名 信息。信息。【例】就【例】就学生基本情况表学生基本情况表,写出进行如下操作的命令,写出进行如下操作的命令(1) (1) 显示当前记录显示当前记录 (2) (2) 显示所有记录显示所有记录(3) (3) 显示前显示前5 5条记录条记录 (4) (4) 显示记录号为奇数的记录显示记录号为奇数的记录(5) (5) 显示女团员的记录显示女团员的记录 (6) (6) 显示显示1818岁以上的男生的学号、姓名。岁以上的男生的学号、姓名。操作操作1:use 学生基本信息表学生基本信息表display操作操作2:list操作操作3: list
31、next 5操作操作4:list for mod(recno(),2)=1操作操作5:list for 是否入团是否入团 and 性别性别= 女女操作操作6:list 学号学号,姓名姓名 for 性别性别= 男男 and year(date()-year(出生日期出生日期)=18use 2. 命令方式命令方式:格式格式2:browse fields for功能:在表记录的功能:在表记录的“浏览浏览”窗口,窗口,显示并允许修改显示并允许修改当前表的记录。当前表的记录。格式格式3:edit|change fields for功能:在表记录的功能:在表记录的“编辑编辑”窗口,窗口,显示并允许修改显示
32、并允许修改当前表的记录。当前表的记录。说明:说明:fields:显示指定字段。缺省时,显示所有字段。:显示指定字段。缺省时,显示所有字段。for:显示满足条件的记录。缺省时,显示所有:显示满足条件的记录。缺省时,显示所有 记录。记录。browsebrowse、editedit、changechange命令是在表记录命令是在表记录“编辑编辑”或或“浏览浏览”窗口中,用手工的方法修改表中记录。如窗口中,用手工的方法修改表中记录。如果有规律地对成批记录进行修改,可以使用果有规律地对成批记录进行修改,可以使用替换修改替换修改操作,可以实现操作,可以实现批量替换修改批量替换修改,从而提高操作效率。,从而
33、提高操作效率。1. 1. 菜单方式菜单方式: :打开表,在记录打开表,在记录“浏览浏览”窗口中显示表记录,选窗口中显示表记录,选择择“表表”菜单下的菜单下的“替换字段替换字段”命令。命令。例:将例:将“学生基本信息表学生基本信息表”中所有中所有12级学生的入学成级学生的入学成绩增加绩增加5分。分。 2.2.命令方式:命令方式:格式:格式:replace with additive, with additive , for 功能:修改当前表中指定范围内、满足条件的记录的指定字段的功能:修改当前表中指定范围内、满足条件的记录的指定字段的值,用表达式的值自动替换对应的字段值。值,用表达式的值自动替换
34、对应的字段值。说明:说明:表达式与对应字段的数据类型必须相同。表达式与对应字段的数据类型必须相同。如果不选择如果不选择“范围范围”和和“forfor子句子句”则则默认范围为当前记录默认范围为当前记录。如果只如果只选择了选择了forfor子句子句,而没有指定范围,而没有指定范围,则范围默认为则范围默认为allall。additiveadditive只能在替换备注型字段时使用。使用只能在替换备注型字段时使用。使用additiveadditive备注型备注型字段的替换内容将附加到备注型字段原来内容的后面,否则用表字段的替换内容将附加到备注型字段原来内容的后面,否则用表达式的值改写原备注型字段内容达式
35、的值改写原备注型字段内容 2.2.命令方式:命令方式:格式:格式:replace with additive, with additive , for 例如:例如: 对对“学生基本信息表学生基本信息表”进行如下操作:进行如下操作:(1)(1)将将“学生基本信息表学生基本信息表”中所有中所有1212级学生的入学成绩减去级学生的入学成绩减去5 5分。分。(2)(2)将年级由原来的两位数变成四位数的形式,即把原来的将年级由原来的两位数变成四位数的形式,即把原来的“10”10”、 “ “11”11”、 “ “12” 12” 分别变成分别变成“2010”2010”、 “2011”2011”、 “ “20
36、12”2012”的形式。的形式。(3)(3)将将3 3号记录的出生日期修改为号记录的出生日期修改为19931993年年1212月月1 1日。日。例如:例如: 对对“学生基本信息表学生基本信息表”进行如下操作:进行如下操作:(1)(1)将将“学生基本信息表学生基本信息表”中所有中所有1212级学生的入学成绩减去级学生的入学成绩减去5 5分。分。(2)(2)将年级由原来的两位数变成四位数的形式,即把原来的将年级由原来的两位数变成四位数的形式,即把原来的1010、 1111、 12 12 分别变成分别变成20102010、 20112011、 20122012的形式。的形式。(3)(3)将将3 3号
37、记录的出生日期修改为号记录的出生日期修改为19931993年年1212月月1 1日。日。use 学生基本信息表学生基本信息表 replace 入学成绩入学成绩 with 入学成绩入学成绩-5 for 年级年级= 12 replace all 年级年级 with 20+年级年级replace record 3 出生日期出生日期 with 1993-12-01use表记录指针的定位表记录指针的定位 (定位记录)(定位记录)表中的记录号:表中的记录号:输入表记录时,系统按照其输入表记录时,系统按照其输入的先后顺序,给每一个记录赋予一个记输入的先后顺序,给每一个记录赋予一个记录号:录号:1 1n n。
38、记录号用于表示数据记录在表。记录号用于表示数据记录在表文件中的物理顺序。文件中的物理顺序。表的记录指针与当前记录:表的记录指针与当前记录: VFPVFP为每一个打为每一个打开的表设置了一个记录指针,指向当前正在开的表设置了一个记录指针,指向当前正在被操作的记录,该记录称为当前记录。被操作的记录,该记录称为当前记录。表记录指针的定位:表记录指针的定位:如果想对某条记录进行如果想对某条记录进行操作,必须让记录指针指向该记录,使其成操作,必须让记录指针指向该记录,使其成为当前记录。表记录的定位,实质就是根据为当前记录。表记录的定位,实质就是根据需要来移动表的记录指针,使其指向要操作需要来移动表的记录
39、指针,使其指向要操作的那条记录。的那条记录。表记录指针的定位有表记录指针的定位有绝对定位、相对定位、绝对定位、相对定位、条件定位条件定位三种方式,可以用三种方式,可以用菜单或命令菜单或命令实现。实现。表起始标识(BOF)表结束标识(EOF) 首记录(TOP) 第2条记录 第n条记录 尾记录(BOTTOM)表记录指针的定位表记录指针的定位 (定位记录)(定位记录)测试记录指针的有关函数测试记录指针的有关函数 p40-p41格式:格式: bof( ) 功能:测试记录指针是否到表的起始处(在首记录之前)功能:测试记录指针是否到表的起始处(在首记录之前) 返回值:返回值:.t. 或或 .f.格式:格式
40、: eof( ) 功能:测试记录指针是否到表的结束处(在末记录之后)功能:测试记录指针是否到表的结束处(在末记录之后) 返回值:返回值:.t. 或或 .f.格式:格式:reccount( ) 功能:返回当前表中记录的总个数功能:返回当前表中记录的总个数 返回值:数值返回值:数值格式:格式: recno( ) 功能:返回当前表当前记录的记录号功能:返回当前表当前记录的记录号 返回值:数值返回值:数值格式格式:found() 功能:检测在当前表中是否查找到所需数据。功能:检测在当前表中是否查找到所需数据。 返回值:返回值:.t. 或或 .f.表起始标识(BOF)表结束标识(EOF) 首记录(TOP
41、) 第2条记录 第n条记录 尾记录(BOTTOM)1 1、菜单方式、菜单方式(1)(1)打开要使用的表,进入表记录打开要使用的表,进入表记录“浏览浏览”窗口。窗口。(2)(2)选择选择“表表”“转到记录转到记录”,弹出,弹出“转到记录转到记录”子菜单。子菜单。第一个:定位到第一条记录第一个:定位到第一条记录最后一个:定位到最后一条记录最后一个:定位到最后一条记录下一个:定位到当前记录的下一条下一个:定位到当前记录的下一条上一个:定位到当前记录的上一条上一个:定位到当前记录的上一条记录号:定位到指定记录号的位置记录号:定位到指定记录号的位置定位:指针将移至满足条件的首条记录定位:指针将移至满足条
42、件的首条记录表记录指针的定位表记录指针的定位 (定位记录)(定位记录)表记录指针的定位表记录指针的定位 (定位记录)(定位记录)(1 1)绝对定位:不管当前的记录指针定位在哪里,将记录指绝对定位:不管当前的记录指针定位在哪里,将记录指针绝对地定位到指定的记录上针绝对地定位到指定的记录上格式:格式:ngoto topngoto bottomngo 功能:功能:n 定位到首记录定位到首记录n 定位到末记录定位到末记录n指针指向当前表的记录号与指针指向当前表的记录号与值相同的记录。值相同的记录。算术表达式值的范围为:算术表达式值的范围为:1至当前表中的最大记录个数至当前表中的最大记录个数(recco
43、unt() 的值)的值) 2 2、命令方式、命令方式表记录指针的定位表记录指针的定位 (定位记录)(定位记录)(2)相对定位:以当前记录位置为基准,向前或向后移动记录指针。)相对定位:以当前记录位置为基准,向前或向后移动记录指针。格式格式: skip 功能:记录指针从当前记录向前或向后移动若干个记录。功能:记录指针从当前记录向前或向后移动若干个记录。说明:说明:当当的值大于的值大于0时,记录指针往表尾方向移动若干条记时,记录指针往表尾方向移动若干条记录,当录,当的值小于的值小于0时,记录指针向表头方向移动若干条时,记录指针向表头方向移动若干条记录。若省略此项,则记录指针移到下一个记录。记录。若
44、省略此项,则记录指针移到下一个记录。如果记录指针指向末记录而执行如果记录指针指向末记录而执行skip,则,则recno()返回一个比表记录返回一个比表记录总数大总数大1的数,且的数,且eof()返回返回.t.;如果记录指针指向首记录而执行;如果记录指针指向首记录而执行skip -1,则则recno()返返 回回1,且,且bof()返回返回.t.如果打开了索引,则记录指针按索引文件中的顺序移动,否则按表如果打开了索引,则记录指针按索引文件中的顺序移动,否则按表文件中的物理顺序移动。文件中的物理顺序移动。表记录指针的定位表记录指针的定位记录指针定位命令举例记录指针定位命令举例use 学生基本信息表
45、学生基本信息表?recno( )go 3skip 2 dispgo bottom? recno(),eof()skip? recno(),eof()use表记录指针的定位表记录指针的定位 (定位记录)(定位记录)(3)条件定位(查询定位)条件定位(查询定位)格式:格式:locate for 功能:功能:在指定的范围内,查找当前表中满足条件的记录,并且定在指定的范围内,查找当前表中满足条件的记录,并且定位到第一条满足条件的记录。位到第一条满足条件的记录。说明:说明:“范围范围”的默认值为的默认值为all。如果要继续查找后面满足条件的记录,可以反复使用如果要继续查找后面满足条件的记录,可以反复使用
46、continue命令,直至到达范围边界或表尾为止。命令,直至到达范围边界或表尾为止。如果找到满足条件的记录,则记录指针指向该记录,并如果找到满足条件的记录,则记录指针指向该记录,并将函数将函数found()的值设置为的值设置为.t.。当没有找到满足条件的记录。当没有找到满足条件的记录时,指针定位在表文件结束标识处或该范围的最后一条记时,指针定位在表文件结束标识处或该范围的最后一条记录,同时系统状态栏上给出提示信息录,同时系统状态栏上给出提示信息“已到定位范围末已到定位范围末尾尾”,函数,函数found()的值为的值为.f.。表记录指针的定位表记录指针的定位 (定位记录)(定位记录)【例】查找【
47、例】查找“学生基本信息表学生基本信息表”中姓中姓“刘刘”的同学。的同学。use 学生基本信息表学生基本信息表locate for left(姓名姓名, 2)=刘刘display 学号学号, 姓名姓名, 性别性别, 系别代号系别代号 &系统主窗口显示如下图所示系统主窗口显示如下图所示continuedisplay 学号学号, 姓名姓名, 性别性别, 系别代号系别代号 &系统主窗口显示如下图所示系统主窗口显示如下图所示continue &系统状态栏上给出提示信息系统状态栏上给出提示信息“已到定位范围末尾已到定位范围末尾”? found() & 系统主窗口显示结果为:
48、系统主窗口显示结果为:.f.添加记录包括添加记录包括插入插入、追加追加和和利用其他文件利用其他文件追加记录追加记录1. 插入记录插入记录 格式:格式:insert blank before功能:在指定位置插入一条新记录或空记录功能:在指定位置插入一条新记录或空记录说明:说明:u 若给出若给出blank选项,则插入一个空记录;若不给出此项,选项,则插入一个空记录;若不给出此项,则进入表记录则进入表记录“编辑编辑”窗口,用户输入新纪录内容。窗口,用户输入新纪录内容。u若给出若给出before选项,则在当前记录的前面插入一个新记选项,则在当前记录的前面插入一个新记录;若不给出该选项,则在当前记录的录
49、;若不给出该选项,则在当前记录的后面后面插入一个插入一个新记录。新记录。 例例1:对学生基本信息表增加:对学生基本信息表增加6号和号和7号记录号记录use 学生基本信息表学生基本信息表go 6 insert beforeinsert&此时新增加的此时新增加的6 6号记录变成当前记录号记录变成当前记录&在在6 6号记录之后插入一条新记录,即第号记录之后插入一条新记录,即第7 7号记录号记录例:已知表:成绩例:已知表:成绩(考号考号(C5),语文语文(N3),数学,数学(N3),英语英语(N3),,平均成绩,平均成绩(N5), 总分总分(N5) )(1)在)在“成绩成绩”表的第表的
50、第4条记录后增加一条新的空白记录,再条记录后增加一条新的空白记录,再用用Replace替换命令修改新添加的空白记录。记录的内容为:替换命令修改新添加的空白记录。记录的内容为: “04405”,95,88,86。(2)用)用Replace命令计算表中所有记录的平均成绩和总分字段命令计算表中所有记录的平均成绩和总分字段的值。的值。例:已知表:成绩例:已知表:成绩(考号考号(C5),语文语文(N3),数学,数学(N3),英语英语(N3),,平均成绩,平均成绩(N5), 总分总分(N5) )(1)在)在“成绩成绩”表的第表的第4条记录后增加一条新的空白记录,再用条记录后增加一条新的空白记录,再用Rep
51、lace替换命令修改新添加的空白记录。记录的内容为:替换命令修改新添加的空白记录。记录的内容为: “04405”,95,88,86。(2)用)用Replace命令计算表中所有记录的平均成绩和总分字段的值。命令计算表中所有记录的平均成绩和总分字段的值。use 成绩成绩go 4insert blanreplace 考号考号 with 04405 ,语文语文 with 95,数学,数学 with 88,英语,英语 with 86replace all 总分总分 with 语文语文+数学数学+英语英语, 平均成绩平均成绩 with 总分总分/3use2. 追加记录追加记录格式:格式:append bl
52、ank功能:在表编辑窗口中为当前表的功能:在表编辑窗口中为当前表的末尾末尾追加一条或多条追加一条或多条记录。记录。说明:说明:u若选用若选用blank选项,则追加一个空记录到表的末尾。选项,则追加一个空记录到表的末尾。u菜单方式:表浏览状态下,选择菜单方式:表浏览状态下,选择“表表|追加新记录追加新记录” 或选择或选择“显示显示|追加方式追加方式” 。3、从其他表文件向当前表追加记录、从其他表文件向当前表追加记录格式:格式:append from fields for 功能:将指定的源表中满足条件的数据添加到当前表尾。功能:将指定的源表中满足条件的数据添加到当前表尾。说明:说明: 系统首先比较
53、源表和当前表的结构,只有字段名和类系统首先比较源表和当前表的结构,只有字段名和类型相匹配的字段内容才可以追加,其他字段为空。型相匹配的字段内容才可以追加,其他字段为空。 如果源表字段的宽度大于当前表相应字段的宽度,字如果源表字段的宽度大于当前表相应字段的宽度,字符型字段将被截断尾部,数值型字段用符型字段将被截断尾部,数值型字段用“*”填充,以填充,以示溢出。示溢出。 菜单方式:表浏览状态下,选择菜单方式:表浏览状态下,选择“表表|追加记录追加记录”,打,打开开“追加来源追加来源”对话框。对话框。3、从其他表文件向当前表追加记录、从其他表文件向当前表追加记录格式:格式:append from f
54、ields for 功能:将指定的源表中满足条件的数据添加到当前表尾。功能:将指定的源表中满足条件的数据添加到当前表尾。【例】【例】“学生信息表学生信息表”的结构如下:的结构如下:学生信息表学生信息表(学号学号C (6), 姓名姓名C (10), 性别性别C (2), 出生日期出生日期D,是,是否入团否入团L,备注,备注M,照片,照片G)把把“学生基本信息表学生基本信息表”中所有学生的相应信息追加到中所有学生的相应信息追加到“学生表学生表”中。中。在命令窗口中输入以下命令:在命令窗口中输入以下命令:use 学生信息表学生信息表 &打开要追加记录的表,使之成为当前表打开要追加记录的表,使
55、之成为当前表append from 学生基本信息表学生基本信息表 fields 学号学号,姓名姓名,性别性别,出生日期出生日期,;是否入团是否入团,备注备注,照片照片browseusel逻辑删除:逻辑删除:对要删除的记录加上对要删除的记录加上删除标记删除标记,逻辑删,逻辑删除的记录需要时还可以恢复。除的记录需要时还可以恢复。l物理删除:物理删除:当确实需要删除记录时,再对带有删除当确实需要删除记录时,再对带有删除标记的记录进行物理删除,物理删除的记录从磁盘上标记的记录进行物理删除,物理删除的记录从磁盘上被彻底删除,不能再恢复。被彻底删除,不能再恢复。逻辑删除有三种方法:逻辑删除有三种方法:鼠标操作:鼠标操作:在表记录在表记录“浏览浏览”窗口,用鼠标移单窗口,用鼠标移单击要删除的记录左侧的矩形域,即对该条记录逻击要删除的记录左侧的矩形域,即对该条记录逻辑删除。辑删除。菜单操作:菜单操作:在表记录在表记录“浏览浏览”窗口,选择窗口,选择“表表| 删删除记录除记录”,弹出,弹出“删除删除”对话框。对话框。命令操作命令操作 格式:格式:delete for 功能:功能:逻辑删除当前表中指定范围、满足条件的逻辑删除当前表中指定范围、满足
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国人失掉自信力了吗语文教案
- 幼儿园消防测试题及答案
- 营口教师考试试题及答案
- 银行总部面试试题及答案
- 学校智慧校园实施方案
- 雅安消防应聘考试题及答案
- 保密与竞业禁止协议公证及律师见证服务合同
- 合作开发分成补充协议
- 生物医药新药研发与临床试验合作协议
- 股权收益代管与新材料产业合作协议
- 冀教版三至四年级《发展柔韧性练习》评课稿
- 肺动脉瓣狭窄球囊扩张术临床路径
- 一年级语文绘本《乌鸦面包店》课件PPT
- 消化系统(宠物解剖生理)
- 汉语拼音声母韵母拼读全表打印版
- 运动系统病例分析01
- 天津市南开区南开中学2022-2023学年物理高二下期末复习检测试题含解析
- 功与功率 课件高一下学期物理人教版(2019)必修第二册
- 成品入库、发货流程图
- 光栅安全检查作业指导
- 电子商务中网络交易平台商标侵权责任研究
评论
0/150
提交评论