550 likes | 712 Views
Visual FoxPro 程序设计. 河南财专信息工程系. 2014/11/6 1. 第 2 章 VFP 表的基本操作. 2.1 VFP 表的建立 2.2 表的打开与关闭 2.3 表的显示 2.4 VFP 的目录操作 2.5 文件的复制和删除 2.6 记录指针的定位 2.7 记录的追加与插入 2.8 记录的删除和恢复 2.9 VFP 表的修改. 第 2 章 VFP 表的基本操作. 2.1 VFP 表的建立. 2.1.1 表结构的建立
E N D
Visual FoxPro 程序设计 河南财专信息工程系 2014/11/61
第2章 VFP表的基本操作 • 2.1 VFP表的建立 • 2.2 表的打开与关闭 • 2.3 表的显示 • 2.4 VFP的目录操作 • 2.5 文件的复制和删除 • 2.6 记录指针的定位 • 2.7 记录的追加与插入 • 2.8 记录的删除和恢复 • 2.9 VFP表的修改
第2章 VFP表的基本操作 2.1 VFP表的建立 2.1.1 表结构的建立 VFP表有两部分构成:表结构(Structure)和数据(Data)。建立表结构就是定义表文件名和字段属性。字段属性包括:字段名、字段类型、字段宽度、小数位。 格式:CREATE〈表名〉 功能:建立一个新的VFP表,表文件的扩展名为DBF,由系统自动生成。 说明:1.该命令用于建立一个新的表文件,如果指定的文件已存在则提示是否将其改写。 2.表文件建好后打Ctrl+W存盘。
第2章 VFP表的基本操作 2.1 VFP表的建立 例:建立teacher.dbf表,表中包括以下字段:姓名(C,6)、性别(C,2)、出生年月(D,8)、婚否(L,1)、教研室(C,6)、职称(C,6)、月收入(N,7,2)、个人简历(M,4)、照片(G,4)。
第2章 VFP表的基本操作 2.1 VFP表的建立 在VFP命令窗口输入:CREATE TEACHER
第2章 VFP表的基本操作 2.1 VFP表的建立 屏幕显示表设计器:
第2章 VFP表的基本操作 Teacher.dbf表的结构
第2章 VFP表的基本操作 2.1 VFP表的建立 按要求依次定义各字段的属性,一个字段属性输完后用TAB键或鼠标单击下一字段属性。 全部字段定义完后,单击"确定"按钮。屏幕显示数据录入对话框: 若要录入数据,单击"是"按钮,进入竖直格式的数据录入状态(见下图);若不录入数据,单击"否"按钮,仅保留定义的表结构。
第2章 VFP表的基本操作 2.1 VFP表的建立
第2章 VFP表的基本操作 2.1 VFP表的建立 2.1.2 数据录入 1.字符型和数字型数据直接录入字符或数字。 2.日期型数据按月日年的顺序录入,分别按两位数输入。 3.逻辑型字段输入逻辑真(T)或逻辑假(F)。 4.备注型和通用型字段若不输入数据可直接打回车,进入下一个字段录入;若要输入数据可按Ctrl+home或双击该字段录入区,进入屏幕编辑状态,备注型字段直接输入字符,通用型字段的输入单击编辑菜单中的插入对象,出现插入对象对话框,再选择需插入的多媒体文件。
第2章 VFP表的基本操作 2.1 VFP表的建立 所有记录输完后,按Ctrl+W存盘。
第2章 VFP表的基本操作 2.1 VFP表的建立 在命令窗口输入LIST命令可查看表的内容。
第2章 VFP表的基本操作 2.2 表的打开与关闭 格式:USE [〈表名〉] 功能:打开或关闭表。 说明:1.USE〈表名〉用于打开一个表。 2.USE缺省表名用于关闭当前打开的表。 3.用USE命令打开一个表的同时关闭原来已打开的表。 例:USE TEACHER &&打开TEACHER表 LIST USE STUDENT &&打开STUDENT的同时关闭TEACHER表 LIST USE &&关闭当前已打开的STUDENT表
第2章 VFP表的基本操作 2.3 表的显示 2.3.1 表记录的显示 格式:LIST/DISPLAY [范围][FIELDS〈字段名表〉][FOR/WHILE〈条件〉][OFF][TO PRINT] 功能:显示表记录。 说明:1.LIST为滚动显示,DISPLAY为分屏显示。 2.LIST若缺省范围,默认为ALL;DISPLAY若缺省范围,默认为当前记录。 3.OFF为关闭记录号显示。 4.TO PRINT为将显示结果送打印机打印。
第2章 VFP表的基本操作 2.3 表的显示 例1:显示TEACHER表中的全部记录。 USE TEACHER LIST
第2章 VFP表的基本操作 2.3 表的显示 例2:显示TEACHER表中职称为副教授的姓名、性别和月收入。 USE TEACHER LIST FIEL 姓名,性别,月收入 FOR 职称="副教授"
第2章 VFP表的基本操作 2.3 表的显示 2.3.2 表结构的显示 格式:LIST/DISPLAY STRUCTURE [TO PRINT] 功能:显示已打开的表结构。 例:显示teacher的表结构。 USE teacher LIST STRU
第2章 VFP表的基本操作 2.3 表的显示
第2章 VFP表的基本操作 2.4 VFP的目录操作 为了便于文件的集中管理,而不至于使文件散落在磁盘各处,可设置系统的默认目录或用户自定义目录,以便查找或打开文件。 2.4.1 设置系统的默认目录 VFP6.0系统在安装时自动生成的目录为: C:\program files\Microsoft visual studio\vfp98 用户在进行VFP操作时,可将其设置为系统默认目录。 其操作步骤为:选定"工具"菜单中的"选项"命令,出现选项对话框,在对话框中选择"文件位置"标签,在列表中双击默认目录,出现更改文件位置对话框,选定使用默认目录,设置完成后单击"确定"按钮。
第2章 VFP表的基本操作 2.4 VFP的目录操作
第2章 VFP表的基本操作 2.4 VFP的目录操作 2.4.2 用户自定义目录 用户也可按自己的要求设置默认目录。 例:将移动磁盘(假设盘符为I:)VFP目录设置为默认目录。 首先要在移动磁盘上建立VFP文件夹,然后按上述操作将VFP设置为默认目录。
第2章 VFP表的基本操作 2.4 VFP的目录操作 用户还可用SET DEFAULT TO <路径>命令设置默认目录。 例:用命令设置I:\VFP为默认目录。 SET DEFA TO I:\VFP 设置默认目录后,用户所进行的各种操作(如建立文件、打开文件等)均在该目录下进行。
第2章 VFP表的基本操作 2.4 VFP的目录操作 2.4.3 查看磁盘文件 为了查看磁盘上存放了哪些文件,需要用文件目录的显示命令。 格式:DIR [盘符][路径][文件名] 功能:显示磁盘文件。 说明:1.若缺省盘符和路径,则显示当前盘、当前目录的磁盘文件。 2.若缺省文件名则仅显示表文件。 3.此命令可使用通配符。
第2章 VFP表的基本操作 2.4 VFP的目录操作 例1:显示当前盘当前目录的表文件。 DIR 例2:显示当前盘当前目录下的所有文件。 DIR *.* 例3:显示移动磁盘(假定I:盘)上的程序文件。 DIR I:\*.PRG
第2章 VFP表的基本操作 2.5 文件的复制和删除 2.5.1 表文件的复制 格式:COPY TO〈文件名〉[范围][FIELDS〈字段名表〉][FOR/WHILE〈条件〉] 功能:将当前打开的表复制成一个新表。 例1:将当前盘当前目录下的TEACHER复制到移动磁盘(I:盘)上。 USE TEACHER COPY TO I:\TEACHER USE I:\TEACHER LIST
第2章 VFP表的基本操作 2.5 文件的复制和删除 例2:复制TEACHER表中月收入1000元以上的记录,生成仅含姓名、性别、职称和月收入字段的表文件,文件名为ATEACHER。 USE TEACHER COPY TO ATEACHER FIEL 姓名,性别,职称,月收入 FOR 月收入>=1000 USE ATEACHER LIST
第2章 VFP表的基本操作 2.5 文件的复制和删除
第2章 VFP表的基本操作 2.5 文件的复制和删除 2.5.2 表结构的复制 格式:COPY STRUCTURE TO〈文件名〉[FIELDS〈字段名表〉] 功能:复制当前打开的表结构,但不复制表中的数据。 例1:将TEACHER的表结构复制到C盘的根目录下,文件名不变。 USE TEACHER COPY STRU TO C:\TEACHER USE C:\TEACHER LIST STRU
第2章 VFP表的基本操作 2.5 文件的复制和删除 例2:复制TEACHER表中的姓名、性别、职称、月收入字段,不复制记录,生成一个JSGL表文件。 USE TEACHER COPY STRU TO JSGL FIEL 姓名,性别,职称,月收入 USE JSGL LIST STRU
第2章 VFP表的基本操作 2.5 文件的复制和删除
第2章 VFP表的基本操作 2.5 文件的复制和删除 2.5.3 任意类型文件的复制 格式:COPY FILE <源文件名> TO <目标文件名> 功能:将源文件复制到目标文件。 说明:1.源文件和目标文件若有扩展名,必须写上。 2.源文件和目标文件若不在当前盘的当前目录下,必须在文件名前加上盘符和路径。 3.使用该命令时,源文件必须是关闭的。 例1:将C盘的VFP目录下TEACHER.DBF文件复制到U盘(I:)的根目录下,文件名改为JSGL.DBF,同时复制其备注型文件。 COPY FILE C:\VFP\TEACHER.DBF TO I:\JSGL.DBF COPY FILE C:\VFP\TEACHER.FPT TO I:\JSGL.FPT
第2章 VFP表的基本操作 2.5 文件的复制和删除 例2:将C盘的VFP目录下的程序文件ABC.PRG复制到U盘(I:)的根目录下,文件名不变。 COPY FILE C:\VFP\ABC.PRG TO I:\ABC.PRG 2.5.4 文件的删除 格式1:ERASE <文件名> 格式2:DELETE FILE <文件名> 功能:删除指定的文件。 说明:被删除的文件需要加扩展名。 例:删除I盘上的STUDENT.DBF文件及其备注型文件。 DELE FILE I:\STUDENT.DBF DELE FILE I:\STUDENT.FPT
第2章 VFP表的基本操作 2.6 记录指针的定位 为了对某一记录进行操作,需要定位当前记录。当前正在操作的记录叫当前记录,通过移动记录指针可以定位当前记录。记录指针的定位有绝对定位、相对定位和条件定位,本节只介绍绝对定位和相对定位,条件定位在查询部分再讲。 2.6.1 记录的绝对定位 格式1:GO[TO] TOP/BOTTOM 格式2:[GO[TO]]〈数值型表达式〉 功能:将记录指针定位到指定的记录。 说明:TOP为首记录,BOTTOM为尾记录,数值型表达式为记录号。
第2章 VFP表的基本操作 2.6 记录指针的定位 例:用TEACHER表说明记录指针的移动。 USE TEACHER DISP GO 4 DISP GO BOTT DISP GO TOP DISP
第2章 VFP表的基本操作 2.6 记录指针的定位 2.6.2 记录的相对定位 格式:SKIP [数值型表达式] 功能:从当前记录开始向前或向后移动记录指针,移动的记录个数由数值型表达式决定。 说明:若缺省数值型表达式,系统默认为1。 例:用TEACHER说明SKIP的用法。 USE TEACHER DISP SKIP 2 DISP SKIP -1 DISP
第2章 VFP表的基本操作 2.7 记录的追加与插入 2.7.1 记录的追加 格式:APPEND [BLANK] 功能:在当前表的表尾追加记录。若有BLANK选项则追加空记录。 例1:在TEACHER表尾追加记录。 USE TEACHER APPE
第2章 VFP表的基本操作 2.7 记录的追加与插入 以竖直格式输入数据,数据输完后,按Ctrl+W存盘。
第2章 VFP表的基本操作 2.7 记录的追加与插入 例2:在TEACHER表尾追加空记录。 USE TEACHER APPE BLAN LIST
第2章 VFP表的基本操作 2.7 记录的追加与插入 2.7.2 记录的插入 格式:INSERT [BEFORE][BLANK] 功能:在当前记录后面插入记录。若有BEFORE选项,则在当前记录前面插入记录。 例1:在TEACHER表中插入一条记录,新插入的记录号为3。 USE TEACHER GO 2 INSE 例2:在TEACHER表中插入一条空记录,新插入的记录号为4。 USE TEACHER 3 INSE BLAN LIST
第2章 VFP表的基本操作 2.8 记录的删除和恢复 1.记录的逻辑删除 格式:DELETE [范围][FOR/WHILE〈条件〉] 功能:在要删除的记录号后打上删除标记"*"。 说明:该命令若缺省范围和条件,则删除当前记录。 例1:删除TEACHER表中第四条记录。 USE TEACHER DELE RECO 4 LIST
第2章 VFP表的基本操作 2.8 记录的删除和恢复 例2:删除TEACHER表中月收入在1000元以上的记录。 USE TEACHER DELE FOR 月收入>=1000 LIST 例3:删除TEACHER表中未婚的记录。 USE TEACHER DELE FOR NOT 婚否 LIST
第2章 VFP表的基本操作 2.8 记录的删除和恢复 2.记录的恢复 格式:RECALL [范围][FOR/WHILE〈条件〉] 功能:恢复被逻辑删除的记录。 说明:若缺省范围和条件,则只恢复当前记录。 例1:恢复第4条记录。 RECA RECO 4 LIST 例2:恢复被逻辑删除的女性记录。 RECA FOR 性别="女" LIST
第2章 VFP表的基本操作 2.8 记录的删除和恢复 3.记录的物理删除 格式:PACK 功能:将带有删除标记的记录从表中清除掉。 4.记录的清空 格式:ZAP 功能:将当前打开的表记录清空,只保留表结构。 说明:本命令的破坏性较大,因此,在执行本命令时,系统显示清空记录提示对话框,单击"是",清空记录,单击"否",则不执行该命令。
第2章 VFP表的基本操作 2.9 VFP表的修改 1.表结构的修改 格式:MODIFY STRUCTURE 功能:修改当前打开的表结构。 说明:该命令可以添加字段、删除字段、修改字段属性。 例:修改TEACHER表结构。 USE TEACHER MODI STRU
第2章 VFP表的基本操作 2.9 VFP表的修改 2.表记录的修改 (1)编辑修改 格式:EDIT/CHANGE [范围] [FIELDS〈字段名表〉] [FOR/WHILE〈条件〉] 功能:以竖直格式对记录进行修改。 例:对TEACHER的记录修改。 USE TEACHER EDIT
第2章 VFP表的基本操作 2.9 VFP表的修改 (2)浏览修改 格式:BROWSE [FIELDS〈字段名表〉] 功能:以全屏幕方式浏览修改记录。 例:浏览修改TEACHER。 USE TEACHER BROW
第2章 VFP表的基本操作 2.9 VFP表的修改 (3)数据的替换 格式:REPLACE [范围]〈字段名1〉WITH〈表达式1〉[,〈字段名2〉WITH〈表达式2〉]…[FOR/WHILE〈条件〉] 功能:用表达式的值替换字段值。 说明:若缺省范围和条件,则只替换当前记录的字段值。 例1:在TEACHER表中将所有记录的月收入增加200元。 USE TEACHER REPL ALL 月收入 WITH 月收入+200 LIST
第2章 VFP表的基本操作 2.9 VFP表的修改 例2:在TEACHER表中将副教授的月收入增加20%。 USE TEACHER REPL 月收入 WITH 月收入*1.2 FOR 职称="副教授" LIST 例3:在ZGGZ表中将应发工资字段(空值)替换为基本工资+奖金+津贴-房租-水电。 USE ZGGZ LIST
第2章 VFP表的基本操作 2.9 VFP表的修改 REPL ALL 应发工资 WITH 基本工资+奖金+津贴-房租-水电 LIST
第2章 VFP表的基本操作 2.9 VFP表的修改 3.记录与数组间的数据传送 (1)将记录数据传送到数组或内存变量 格式:SCATTER [FIELDS〈字段名表〉] TO〈数组名/内存变量名表〉 功能:将当前记录的字段值(备注型和通用型字段除外)按顺序依次送入到数组元素或内存变量中。 例:将teacher表的第三条记录的字段值传送到数组A中。 USE TEACHER LIST