VisualFoxPro的操作实用教案_第1页
VisualFoxPro的操作实用教案_第2页
VisualFoxPro的操作实用教案_第3页
VisualFoxPro的操作实用教案_第4页
VisualFoxPro的操作实用教案_第5页
已阅读5页,还剩85页未读 继续免费阅读

下载本文档

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

文档简介

1、12021-12-82.1 表的创建2.2 表的基本操作2.3 表的排序与索引2.4 表的查询2.5 表的统计与计算(j sun)2.6 多表操作第1页/共89页第一页,共90页。22021-12-82.1 表的创建(chungjin) 表由表结构和表记录两部分组成(z chn)。 表结构描述了数据存放形式以及存储的顺序,也就是指一张表的表头结构,即字段的基本属性。确定了表的字段,就完成了对表机构的定义。 表记录即表中的一行,是表要保存的数据主体。 数据由记录组成(z chn),字段是构成记录的基本单元。创建一个表,首先要建立表结构,然后再输入表记录。第2页/共89页第二页,共90页。3202

2、1-12-82.1.1 表结构(jigu)的设计 表机构的设计就是定义表中各个字段的属性。字段的属性包括(boku)字段名、字段类型、字段宽度、小数位数和空值支持。第3页/共89页第三页,共90页。42021-12-81.字段名字段又称为字段变量(binling),字段名即每个字段的名字,必须以字母或汉字开头,可由字母、数字、汉字、下划线组成,字母大小写无区别,但其中不允许出现空格或其他字符。自由表的字段名最多可由10个字符组成,数据库表的字段名最多可由128个字符组成。当数据库表转换成自由表时,此表的长字段名将截短为10个字符。第4页/共89页第四页,共90页。52021-12-82.字段类

3、型字段类型决定了存储在该字段变量中的数据类型。Visual FoxPro定义了13种字段类型,常用的字段类型有字符型(C)、数值型(N)、货币型(Y)、日期型(D)、日期时间型(T)、逻辑型(L)、备注型(M)和通用型(G)。3.字段宽度字段宽度规定(gudng)了字段所能容纳数据的最大字节数。第5页/共89页第五页,共90页。62021-12-84.小数位数小数位数规定了数值型数据(shj)要保留几位小数。此时的字段宽度=整数位数+1+小数位数。5.NULL值用于表明某个字段是否允许NULL值(空值)。NULL值是指无明确的值。NULL值不等同于零或空格。一个NULL值不能认为比某个值(包括

4、另一个NULL值)大或小,相等或不等。作为关键字的字段不允许空值。第6页/共89页第六页,共90页。72021-12-82.1.2 表的创建(chungjin)1.表结构的创建【格式】CREATE 表文件名 【功能(gngnng)】创建表的结构【说明】表文件的扩展名“.dbf”可以省略不写。此命令所创建的表文件是保存在Visual FoxPro的默认路径下,Visual FoxPro的默认路径可以通过相关设置进行更改。 第7页/共89页第七页,共90页。82021-12-8【例2.1】创建学生表 。CREATE 学生在命令窗口中执行上述命令后,则弹出表设计(shj)器。将各字段的字段名、类型、

5、宽度和小数位数等输入到表设计(shj)器中,单击“确定”按钮,即可完成表结构的创建。如图所示。第8页/共89页第八页,共90页。92021-12-82.表记录的输入在表设计(shj)器中设置好表结构后,单击“确定”按钮,则会弹出如图所示的对话框,询问用户是否现在输入记录。如果单击“是”按钮,则会打开如图所示的输入记录窗口。第9页/共89页第九页,共90页。102021-12-82.2 表的基本操作 表的基本操作包括表的打开与关闭、表结构的显示与修改、表记录的显示、记录指针定位、表记录的修改、表记录的添加(tin ji)、表记录的删除和恢复、表的复制及表与数组间的数据传递。第10页/共89页第十

6、页,共90页。112021-12-82.2.1 表的打开(d ki)与关闭 1.表的打开【格式】USE【功能】打开指定的表。【说明】表文件(wnjin)的扩展名“.dbf”可以省略不写。新打开的表文件(wnjin),记录指针指向第一条记录。 第11页/共89页第十一页,共90页。122021-12-82.表的关闭(1)使用USE命令【格式】USE【功能】关闭当前工作区中已经(y jing)打开的表文件。(2)使用CLEAR命令【格式】CLEAR ALL【功能】关闭所有工作区中已经(y jing)打开的表文件、索引文件、格式文件和备份文件等,同时释放所有的内存变量,并选择工作区1为当前工作区。第

7、12页/共89页第十二页,共90页。132021-12-8(3)使用CLOSE命令【格式】CLOSE ALL【功能】关闭各种类型文件,并选择工作区1为当前工作区。(4)退出Visual FoxPro系统【格式】QUIT【功能】关闭所有打开(d ki)的文件,退出Visual FoxPro 系统,并返回到操作系统。第13页/共89页第十三页,共90页。142021-12-82.2.2 表结构(jigu)的显示与修改1.表结构的显示【格式】LIST|DISPLAY STRUCTURE TO PRINTTO FILE 【功能】显示当前表文件(wnjin)的结构。2.表结构的修改【格式】MODIFY

8、STRUCTURE 【功能】修改当前表文件(wnjin)的结构第14页/共89页第十四页,共90页。152021-12-8【例2.3】显示学生(xu sheng)表的结构。USE 学生(xu sheng) LIST STRUCTURE显示结果如图所示。第15页/共89页第十五页,共90页。162021-12-82.2.3 表记录(jl)的显示【格式】LIST|DISPLAY FIELDS FOR WHILE OFF TO PRINTER PROMPT|TO FILE 【功能】将当前表文件的记录按照(nzho)指定的选项进行显示。第16页/共89页第十六页,共90页。172021-12-8【说明

9、】FIELDS :用来指定要显示的字段,关键字FIELDS可以省略不写。如果将FIELDS 全部省略,则默认显示表中所有字段。:用来指定要显示的记录范围。范围子句共有(n yu)4种指定方式,分别是ALL、RECORD N、NEXT N和REST。FOR 和WHILE :用来指定要显示的记录所要满足的筛选条件。二者的区别在于FOR 指定表中满足筛选条件的所有记录,WHILE 指定表中从当前记录开始到第一次条件不满足为止之前的所有记录。命令动词DISPLAY和LIST的区别:DISPLAY是分屏显示,LIST是滚屏显示;如果同时省略和子句,DISPLAY只显示当前记录,而LIST则显示全部记录。

10、OFF选项:若不需要显示记录号,则使用OFF选项。LIST和DISPLAY两条命令在执行过程中都可能会引起记录指针的移动。第17页/共89页第十七页,共90页。182021-12-8【例2.5】显示学生表中全部记录(jl)的学号、姓名、性别、专业和入学成绩字段。USE 学生LIST FIELDS 学号,姓名,性别,专业,入学成绩显示结果如图所示。第18页/共89页第十八页,共90页。192021-12-8【例2.7】显示学生表中前5条记录(jl)的全部信息。USE 学生 LIST NEXT 5显示结果如图所示。第19页/共89页第十九页,共90页。202021-12-8【例2.8】显示(xin

11、sh)学生表中计算机专业学生的学号、姓名和专业信息。USE 学生LIST 学号,姓名,专业 FOR 专业=”计算机”显示(xinsh)结果如图所示。第20页/共89页第二十页,共90页。212021-12-8【例2.10】显示学生表中入学成绩在590分至610分之间的少数民族(shoshmnz)学生的全部信息。USE 学生DISPLAY FOR 入学成绩=590 AND 入学成绩=610 AND NOT 汉族否显示结果如图所示。 第21页/共89页第二十一页,共90页。222021-12-82.2.4 记录(jl)指针定位 表的记录指针,是一个指示器,用以指示当前被操作的记录,即当前记录。如果

12、要对某条记录进行操作,必须移动记录指针,使其指向该条记录,这就是记录指针的定位。 刚打开的表,即使是空表,记录指针都自动指向记录号为1的记录。记录指针的定位有绝对(judu)定位、相对定位和查询定位。第22页/共89页第二十二页,共90页。232021-12-81.绝对定位【格式(g shi)】GOTO RECORD【功能】将记录指针绝对定位到“记录号”所指示的记录上。【说明】绝对定位与是否打开索引文件没有关系。 第23页/共89页第二十三页,共90页。242021-12-8【例2.12】显示学生表中第3条和第5条记录(jl)。USE 学生GO 3DISPLAY5?RECNO()DISPLAY

13、结果如图所示。第24页/共89页第二十四页,共90页。252021-12-82.相对定位【格式1】SKIP 【功能】将记录指针从当前记录位置(wi zhi)向上或向下移动若干条记录。 【格式2】GOTO 【功能】将记录指针移到表文件的首记录或尾记录。第25页/共89页第二十五页,共90页。262021-12-8【例2.13】写出下列命令执行后的结果(ji gu)。USE 学生SKIP 2 ?RECNO()GO TOP?RECNO()?BOF(),EOF()SKIP -1?BOF(),EOF()?RECNO()GO BOTTOM ?RECNO()?BOF(),EOF() SKIP ?RECNO(

14、)?BOF(),EOF()第26页/共89页第二十六页,共90页。272021-12-82.2.5 表记录(jl)的修改1.编辑修改【格式】EDIT|CHANGEFIELDSFOR 【功能】按照给定的范围和条件编辑修改当前打开(d ki)的表文件的记录。执行该命令后,系统打开(d ki)记录编辑窗口,供用户进行记录的修改。2.浏览修改【格式】BROWSEFIELDSFOR【功能】按照给定的条件浏览修改当前打开(d ki)的表文件的记录。执行该命令后,系统打开(d ki)记录浏览窗口,供用户进行记录的修改。第27页/共89页第二十七页,共90页。282021-12-83.替换修改【格式】REPL

15、ACE WITH ADDITIVE, WITH ADDITIVE,FOR 【功能】用指定表达式的值替换当前表中满足条件记录的指定字段的值。第28页/共89页第二十八页,共90页。292021-12-8【例2.17】将学生表中所有少数民族学生的入学成绩(chngj)加10分。USE 学生REPLACE 入学成绩(chngj) WITH 入学成绩(chngj)+10 FOR NOT 汉族否LIST显示结果如图所示。 第29页/共89页第二十九页,共90页。302021-12-8【例2.18】求出入学成绩(chngj)表中每个学生的总分。USE 入学成绩(chngj)REPLACE ALL 总分 W

16、ITH 语文+数学+外语+综合LIST显示结果如图所示。 第30页/共89页第三十页,共90页。312021-12-82.2.6 表记录(jl)的添加 1.插入记录【格式】INSERT BEFORE BLANK【功能】在当前表的指定位置上插入一条或多条记录。 【例2.19】在学生表中第2条记录之后插入一条新记录,在第5条记录之前(zhqin)插入一条空白记录。USE 学生GO 2INSERTGO 5INSERT BEFORE BLANK第31页/共89页第三十一页,共90页。322021-12-82.追加记录【格式】APPEND BLANK【功能】在当前表的表尾追加一条或多条记录。【例2.20

17、】在学生表的表尾追加一条空白(kngbi)记录。USE 学生APPEND BLANK3.从另一个表文件中追加记录【格式】APPEND FROM FIELDS FOR 【功能】从指定表文件中读取数据并追加到当前表文件的末尾。第32页/共89页第三十二页,共90页。332021-12-8【例2.21】现有一空表,表名为“计算机专业学生信息”,表结构(jigu)与学生表完全相同。要求从学生表中读取计算机专业的学生信息追加到此表中。USE 计算机专业学生信息APPEND FROM 学生 FOR 专业=”计算机”LIST显示结果如图所示。第33页/共89页第三十三页,共90页。342021-12-82.

18、2.7 表记录的删除(shnch)和恢复1.逻辑删除记录【格式】DELETE FOR WHILE 【功能】对当前表中指定(zhdng)的范围内满足条件的记录加上删除标记。第34页/共89页第三十四页,共90页。352021-12-8【例2.22】逻辑删除学生表中入学成绩低于600分的学生记录。USE 学生DELETE FOR 入学成绩600LIST显示(xinsh)结果如图所示。第35页/共89页第三十五页,共90页。362021-12-82.隐藏逻辑删除的记录【格式】SET DELETED ON|OFF【功能(gngnng)】将表中已经逻辑删除的记录隐藏或显示。【例2.23】隐藏例3.22中

19、学生表中逻辑删除的记录。USE 学生SET DELETED ONLIST显示结果如图所示。第36页/共89页第三十六页,共90页。372021-12-83.恢复逻辑删除的记录(jl)【格式】RECALL FOR WHILE 【功能】对当前表中指定范围内满足条件并已逻辑删除的记录(jl)取消其删除标记,恢复为正常记录(jl)。第37页/共89页第三十七页,共90页。382021-12-8【例2.24】恢复学生表中所有(suyu)被逻辑删除的记录。USE 学生RECALL ALLLIST显示结果如图所示。第38页/共89页第三十八页,共90页。392021-12-84.物理删除已被逻辑删除的记录(

20、jl)【格式】PACK【功能】将当前表中所有带删除标记的记录(jl)彻底从表中删除。5.物理删除全部记录(jl)【格式】ZAP【功能】物理删除当前表中的全部记录(jl)。第39页/共89页第三十九页,共90页。402021-12-8【例2.25】逻辑删除(shnch)计算机专业学生信息表中男生的记录后再将其物理删除(shnch)。USE 计算机专业学生信息DELETE FOR 性别=”男”LISTPACKLIST显示结果如图所示。第40页/共89页第四十页,共90页。412021-12-82.2.8 表的复制(fzh)1.复制表结构【格式】COPY STRUCTURE TOFIELDS【功能】

21、将当前表的结构复制到指定(zhdng)的表中。仅复制当前表的结构,不复制其记录数据。【例2.26】将学生表的学号、姓名、性别、专业和入学成绩字段复制给新表JGFZ。USE 学生COPY STRUCTURE TO JGFZ FIELDS 学号,姓名,性别,专业,;入学成绩第41页/共89页第四十一页,共90页。422021-12-82.复制表文件(wnjin)【格式】COPY TO FIELDSFOR【功能】将当前表中的数据与结构同时复制到指定的表文件(wnjin)中。此命令还可以将当前表复制生成一个其他格式的数据文件(wnjin)。【例2.27】将学生表复制生成新表STUDENT,其结构和记录

22、完全相同。USE 学生COPY TO STUDENT第42页/共89页第四十二页,共90页。432021-12-82.2.9 表与数组间的数据(shj)传递1.将表的单个记录的值传递到一维数组中【格式】SCATTER FIELDS TO 【功能】将当前(dngqin)表中当前(dngqin)记录指定字段的内容依次存入数组中。2.将数组传递到表的当前(dngqin)记录中【格式】GATHER FROM FIELDS MEMO【功能】将数组中的数据作为一条记录传递到当前(dngqin)表的当前(dngqin)记录中,以更新各个字段的内容。第43页/共89页第四十三页,共90页。442021-12-

23、83.将表的多条记录复制到二维数组中【格式】COPY TO ARRAY FIELDS FOR【功能(gngnng)】将把指定范围内满足条件的所有记录的有关字段内容全部复制到指定的数组中。4.从数组向表传递多个记录【格式】APPEND FROM ARRAY FOR FIELDS 【功能(gngnng)】将满足条件的数组行的数据按记录形式依次添加到当前表中,但该命令将忽略备注型字段。第44页/共89页第四十四页,共90页。452021-12-82.3 表的排序(pi x)与索引 表中的记录是按照输入记录时的先后顺序即物理顺序排列存放的。但在实际的数据处理应用中,表中的数据量很大,为了方便迅速查找及

24、处理数据,就需要(xyo)将表中的记录按一定的顺序重新排列。在Visual FoxPro中提供了两种重新排列数据的方法:排序和索引。第45页/共89页第四十五页,共90页。462021-12-82.3.1 排序(pi x)【格式】SORT TO ON /A|/D/C,/A|/D/C FIELDS FOR 【功能】对当前表中的记录(jl)按指定的字段进行排序,并将排序后的记录(jl)保存到一个新表中。第46页/共89页第四十六页,共90页。472021-12-8【例2.28】将学生表中所有男生的记录按入学成绩(chngj)从高到低进行排序,生成新表NSCJ。USE 学生SORT TO NSCJ

25、ON 入学成绩(chngj)/D FOR 性别=”男”USE NSCJLIST显示结果如图所示。第47页/共89页第四十七页,共90页。482021-12-8【例2.29】将学生表中的所有记录按专业升序排列,专业相同的按入学成绩降序排列,生成新表ZYCJ,只包含学号、姓名(xngmng)、专业和入学成绩4个字段。USE 学生SORT TO ZYCJ ON 专业,入学成绩/D FIELDS 学号,姓名(xngmng),专业,;入学成绩USE ZYCJLIST显示结果如图所示。第48页/共89页第四十八页,共90页。492021-12-82.3.2 索引(suyn)1.索引的定义索引是按指定的关键

26、字表达式将表中记录从逻辑上进行有序排列的技术。索引是以索引文件的形式存在的。索引文件决定的记录的排列顺序称为逻辑顺序。一个表文件可以创建多个索引文件,索引文件必须(bx)与表文件一起使用,而不能单独使用。第49页/共89页第四十九页,共90页。502021-12-82.索引文件的类型索引文件的类型有两种:单索引文件和复合索引文件。单索引文件是根据一个(y )索引关键字表达式建立的索引文件,其扩展名为.idx。复合索引文件中可包含多个索引标识,复合索引文件的扩展名为.cdx。复合索引文件又分为两种:结构复合索引文件和非结构复合索引文件。结构复合索引文件的主文件名与对应的表文件的主文件名同名,其扩

27、展名为.cdx。结构复合索引文件随表的打开而自动打开,随表的关闭而自动关闭。非结构复合索引文件的主文件名由用户指定,其扩展名为.cdx。第50页/共89页第五十页,共90页。512021-12-83.索引的类型主索引候选索引 普通(ptng)索引 唯一索引 第51页/共89页第五十一页,共90页。522021-12-84.索引文件的建立(1)单索引文件的建立【格式】INDEX ON TO UNIQUE FOR ADDITIVE【功能】对当前表文件按指定的索引关键字表达式升序建立普通索引或唯一索引,并存储在单索引文件中。第52页/共89页第五十二页,共90页。532021-12-8【例2.30】

28、将学生表中的所有记录(jl)按入学成绩建立单索引文件。USE 学生INDEX ON 入学成绩 TO RXCJLIST显示结果如图所示。第53页/共89页第五十三页,共90页。542021-12-8【例2.31】将学生表中的所有记录按专业和入学成绩建立(jinl)单索引文件。USE 学生INDEX ON 专业+STR(入学成绩,5,1) TO ZYCJLIST显示结果如图所示。第54页/共89页第五十四页,共90页。552021-12-8(2)结构复合(fh)索引文件的建立【格式】INDEX ON TAG UNIQUE|CANDIDATE ASCENDING|DESCENDING FOR ADD

29、ITIVE【功能】对当前表文件按指定的索引关键字表达式升序或降序建立普通索引、唯一索引、候选索引,并以索引标识的形式存储在与表同名的结构复合(fh)索引文件中。第55页/共89页第五十五页,共90页。562021-12-8【例2.33】将学生表中的所有记录按入学成绩降序建立结构复合索引文件(wnjin)的索引标识。USE 学生INDEX ON 入学成绩 TAG CJ DESCENDINGLIST显示结果如图所示。第56页/共89页第五十六页,共90页。572021-12-8(3)非结构复合索引文件的建立【格式】INDEX ON TAG OF UNIQUEASCENDING|DESCENDING

30、 FOR ADDITIVE【功能】对当前表文件按指定的索引关键字表达式升序或降序建立普通索引或唯一索引,并以索引标识的形式存储在非结构复合索引文件中。第57页/共89页第五十七页,共90页。582021-12-8【例2.34】为学生表建立一个名为FJG的非结构复合(fh)索引文件,其中包含一个按专业建立的索引标识ZY。USE 学生INDEX ON 专业 TAG ZY OF FJGLIST显示结果如图所示。第58页/共89页第五十八页,共90页。592021-12-85.索引(suyn)文件的打开(1)同时打开表和索引(suyn)文件【格式】USE INDEX ORDER|TAGOFASCEND

31、ING|DESCENDING【功能】打开指定表文件的同时打开相关的索引(suyn)文件。第59页/共89页第五十九页,共90页。602021-12-8【例2.35】在打开学生表的同时打开单索引文件RXCJ和ZYCJ,指定ZYCJ为主控索引。USE 学生 INDEX ZYCJ,RXCJLIST显示(xinsh)结果如图所示。第60页/共89页第六十页,共90页。612021-12-8(2)打开表后再打开索引文件【格式】SET INDEX TOORDER|TAGOFASCENDING|DESCENDING【功能】在已打开表文件的前提下,打开相关(xinggun)索引文件。【例2.36】打开学生表的

32、两个单索引文件RXCJ和ZYCJ,指定ZYCJ为主控索引。USE 学生SET INDEX TO ZYCJ,RXCJ第61页/共89页第六十一页,共90页。622021-12-86.主控索引(suyn)的指定【格式】SET ORDER TO |TAGOFASCENDING|DESCENDING【功能】指定主控索引(suyn)。【例2.37】在学生表已经打开的索引(suyn)文件中,重新指定RXCJ为主控索引(suyn)。USE 学生SET INDEX TO ZYCJ,RXCJLISTSET ORDER TO RXCJ第62页/共89页第六十二页,共90页。632021-12-87.索引文件的关闭

33、【格式1】USE【功能】关闭当前工作区中打开(d ki)的表文件及所有索引文件。【格式2】SET INDEX TO【功能】关闭当前工作区中打开(d ki)的所有单索引文件和非结构复合索引文件,而表文件和结构复合索引文件保持打开(d ki)状态。【格式3】CLOSE INDEX【功能】关闭当前工作区中打开(d ki)的所有单索引文件和非结构复合索引文件,而表文件和结构复合索引文件保持打开(d ki)状态。第63页/共89页第六十三页,共90页。642021-12-88.索引文件的更新【格式】REINDEX【功能(gngnng)】按照原先创建索引的规则重新创建索引文件。 第64页/共89页第六十四

34、页,共90页。652021-12-82.4 表的查询(chxn) 查询是指按照指定的查找条件从数据表中查找所需的记录。在数据处理的实际应用中,经常需要在大量的数据中进行查询操作,查询是检索( jin su)数据的主要方法。Visual FoxPro提供的查询方法有顺序查询和索引查询。第65页/共89页第六十五页,共90页。662021-12-82.4.1 顺序(shnx)查询【格式】LOCATE FOR WHILE【功能】按顺序搜索表从而找到满足指定条件的第一条记录。【例2.38】查询学生(xu sheng)表中计算机专业女生的信息。USE 学生(xu sheng)LOCATE FOR 专业=

35、“计算机” AND 性别=”女”?FOUND()DISPLAYCONTINUEDISPLAY第66页/共89页第六十六页,共90页。672021-12-82.4.2 索引(suyn)查询1.FIND查询【格式(g shi)】FIND |【功能】在表中查找其主控索引关键字值与或相匹配的第一条记录。【例2.39】查询学生表中姓名为“刘阅”的记录信息。USE 学生INDEX ON 姓名 TO XMFIND 刘阅?FOUND()DISPLAY显示结果如图所示。第67页/共89页第六十七页,共90页。682021-12-82.SEEK查询【格式】SEEK 【功能】在表中查找其主控索引关键字值与指定(zh

36、dng)表达式的值相匹配的第一条记录。【例2.40】查询学生表中所有少数民族学生的信息。USE 学生INDEX ON 汉族否 TO MZSEEK .F.?FOUND()DISPLAYSKIP第68页/共89页第六十八页,共90页。692021-12-8DISPLAYSKIPDISPLAY显示(xinsh)结果如图所示。第69页/共89页第六十九页,共90页。702021-12-8【例2.41】查询学生(xu sheng)表中计算机专业男生的信息。USE 学生(xu sheng)INDEX ON 专业+性别 TO ZYXBSEEK “计算机男”?FOUND()DISPLAYSKIPDISPLAY

37、显示结果如图所示。第70页/共89页第七十页,共90页。712021-12-82.5 表的统计(tngj)与计算 统计与计算也是数据处理应用中常用的一类操作(cozu)。Visual FoxPro主要提供了5个相关的命令,分别是统计记录数、求和、求平均值、综合计算和分类汇总。第71页/共89页第七十一页,共90页。722021-12-82.5.1 统计(tngj)记录个数【格式】COUNT FORWHILETO 【功能】统计当前表中指定范围内满足指定条件的记录个数。【例2.42】统计学生表中所有少数民族(shoshmnz)学生的人数。USE 学生COUNT FOR NOT 汉族否 TO X?”

38、少数民族(shoshmnz)学生人数是:”,X第72页/共89页第七十二页,共90页。732021-12-82.5.2 求和(qi h)【格式】SUM FORWHILETO 【功能】对指定范围内满足条件(tiojin)的记录按指定的各个表达式分别求和。【例2.43】对入学成绩表中所有学生的语文、数学、外语三科成绩分别求和。USE 入学成绩SUM 语文,数学,外语第73页/共89页第七十三页,共90页。742021-12-82.5.3 求平均值【格式】AVERAGE FORWHILETO 【功能(gngnng)】对指定范围内满足条件的记录按指定的各个表达式分别求平均值。【例2.44】对学生表中所

39、有学生的入学成绩求平均分。USE 学生AVERAGE 入学成绩第74页/共89页第七十四页,共90页。752021-12-82.5.4 综合(zngh)计算【格式】CALCULATE FOR WHILE TO【功能】分别计算当前表中表达式表的值。【例2.45】分别统计计算学生表中的学生总数、平均入学成绩和最高入学成绩。USE 学生CALCULATE CNT(),AVG(入学成绩),MAX(入学成绩)第75页/共89页第七十五页,共90页。762021-12-82.5.5 分类(fn li)汇总【格式】TOTAL TO ON FIELDS FOR WHILE【功能】将当前表中的记录进行分类汇总(

40、huzng),并把汇总(huzng)的结果存入生成的新表中。【例2.46】将学生表中的记录按性别对入学成绩进行汇总(huzng),生成汇总(huzng)表CJHZ。USE 学生INDEX ON 性别 TO XBTOTAL TO CJHZ ON 性别USE CJHZLIST第76页/共89页第七十六页,共90页。772021-12-82.6 多表操作(cozu) 前面几节介绍的表操作都是在默认的同一个工作(gngzu)区中进行的,而Visual FoxPro规定一个工作(gngzu)区最多只能打开一个表,因此,当打开一个新表时,以前打开的表就被自动关闭了,则进行的表操作始终都是针对单个表的。但在

41、数据处理的实际应用中,经常需要同时对多个表的数据进行操作。为了解决这个问题,Visual FoxPro提供了多工作(gngzu)区的工作(gngzu)模式。第77页/共89页第七十七页,共90页。782021-12-82.6.1 工作(gngzu)区1.工作区的定义工作区是Visual FoxPro用来存放打开的表而在内存中开辟的一块存储区域。Visual FoxPro一共提供了32767个工作区,而每个工作区只能打开一个表,则Visual FoxPro最多同时可以打开32767个表来进行(jnxng)多表操作。但一次只能对一个工作区进行(jnxng)操作,则当前正在操作的工作区称为当前工作区

42、,当前工作区中的表称为当前表。系统默认1号工作区为当前工作区。第78页/共89页第七十八页,共90页。792021-12-82.选择当前工作区【格式】SELECT |【功能】选择指定的工作区为当前工作区。【例2.47】依次在1、2、3号工作区打开学生表、教师表和入学成绩表,并指定教师表为当前表,显示其记录信息。SELECT 1 USE 学生SELECT 2USE 教师 ALIAS JSSELECT C USE 入学成绩SELECT JS第79页/共89页第七十九页,共90页。802021-12-83.工作区的互访【格式1】别名.字段名【格式2】别名-字段名【例2.48】依次在1、2号工作区打开

43、(d ki)学生表和入学成绩表,并指定1号工作区为当前工作区,且显示学生表所有记录的学号、姓名、专业字段和入学成绩表的语文、数学字段。SELECT AUSE 学生SELECT BUSE 入学成绩SELECT ALIST 学号,姓名,专业,B.语文,B-数学第80页/共89页第八十页,共90页。812021-12-82.6.2 表间临时(ln sh)关联1.关联(gunlin)的定义表间临时关联(gunlin)是指将当前工作区中的表与其他工作区中的表按某种条件建立关系,从而实现各表记录指针的临时联动。发出关联(gunlin)的表称为父表或主表,被关联(gunlin)的表称为子表。表间临时关联(gunlin)可分为一对一关联(gunlin)、一对多关联(gunlin)和多对多关联(gunlin)。第81页/共89页第八十一页,共90页。822021-12-82.建立(jinl)表间临时关联(1)建立(jinl)一对

温馨提示

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

评论

0/150

提交评论