收藏 分享(赏)

程序设计ppt课件 第03章 表的创建和使用.ppt

上传人:微传9988 文档编号:2268985 上传时间:2018-09-08 格式:PPT 页数:76 大小:1.01MB
下载 相关 举报
程序设计ppt课件 第03章 表的创建和使用.ppt_第1页
第1页 / 共76页
程序设计ppt课件 第03章 表的创建和使用.ppt_第2页
第2页 / 共76页
程序设计ppt课件 第03章 表的创建和使用.ppt_第3页
第3页 / 共76页
程序设计ppt课件 第03章 表的创建和使用.ppt_第4页
第4页 / 共76页
程序设计ppt课件 第03章 表的创建和使用.ppt_第5页
第5页 / 共76页
点击查看更多>>
资源描述

1、第3章 表的创建和使用,Visual FoxPro是关系数据库管理系统,管理的表是关系表。,3.1 表的结构,表结构通过表设计器建立,通过SQL命令直接建立。 先介绍通过表设计器建立表结构,表的文件名为XS。打开表设计器有下列几种方法: (1) 选“文件”主菜单选“新建”菜单项“新建”对话框选“表”显示“创建”表对话框。输入的文件名后选“保存”即打开表设计器窗口。 (2) 单击工具栏“新建”按钮。然后一步一步进行。,1. 表结构的创建,3.1 表的结构,(3) 在命令窗口中打入“CREATE 表名”用命令打开表设计器创建表。打开表设计器后,在表设计器中交互输入表结 。,表设计器包含“字段”、“

2、索引”和“表”三页。,3.1 表的结构,字段名字段名由若干个字符(字母、汉字、“_”和数字)组成,但不能以数字打头。字段名最多为10个字符,不能使用系统的保留字(保留字就是系统已径使用的词,系统使用的命令、函数名等)。,字段类型、宽度字段类型应根据当前字段的存放的数据和将要对它进行的操作而定。字段宽度对于字符型和二进制字符型是字段最大允许存放的字符个数, 对于数值型和浮点型是数值的最大位数。其他类型是系统固定的 。,3.1 表的结构,VFP字段类型和宽度的有关说明,3.1 表的结构,Visual FoxPro 9.0中增加了下列字段类型:Integer(AutoInc):自动增量类型,该字段记

3、录内容 由系统自动管理,后一个记录的值在前一个记录值的基 础上增加一个增量。Varchar:可变字符型,每一个记录根据实际存放的 字符个数占用存储空间。Varchar(Binary):可变二进制字符型,每一个记录 根据实际存放的二进制字符个数占用存储空间。VarBinary:可变二进制型,每一个记录根据实际的 二进制数占用存储空间。Blob:大数据类型,用于存放各种大的数据。,3.1 表的结构,小数位数对于字段类型指定数值型,可指定小数位数。 字段宽度整数位数+小数位数+1(小数点)。,索引索引是一种提高被索引的内容的查找速度的方法。“索引”项有三种: 无、升序和降序。,NULL 本字段是否可

4、为空。是否出现不输任何内容的记录。 单击“插入”按钮,在当前字段前插入一个字段; 单击“删除”按钮删除当前字段。表结构建立后选“确切”保存到表文件中,选“取消”保存而直接退出表设计器。,3.1 表的结构,2. 表文件表结构建立, 选“确定” 将表结构保存表文件中,文件位置为当前默认工作文件夹,默认的工作文件夹可通过“SET DEFAULT TO 工作文件夹”进行设置。生成的对应表的文件一般有三个:,(1) 表文件:存放表结构和表记录数据,默认扩展名为DBF。(2) 表备注文件:放表中备注型字段,默认扩展名为FPT。含备注、备注(二进制)、通用型字段的表文件仅存放其保存实际内容的FPT文件位置。

5、表中没有这些字段,FPT文件不会产生。(3) 表索引文件:存放表索引项信息,文件默认扩展名为CDX。只有在“索引”页包含索引项才会产生这个文件。,3.1 表的结构,3. 修改表结构修改表结构, 通过文件菜单“打开”菜单项或常用工具栏打开文件按钮打开表文件或用下列命令打开表文件。USE 表文件名再使用下列命令打开表设计器修改打开的表结构,修改完成后按“确定”保存。MODIFY STRUCTURE用下列命令可显示表结构。LIST STRUCTUREDISPLAY STRUCTURE 用下列命令关闭表文件,关闭表才会将修改的内容保存到表文件中。USE,3.1 表的结构,【例3.1】修改学生(XS)表

6、结构。,SET DEFAULT TO E:CJGL USE xs MODI STRU USE,SQL语句的CREATE TABLE和ALTER TABLE命令可由命令直接创建表结构。,3.1 表的结构,成绩(XSKC)表表结构。,3.2 表的操作,学生(XS)表建立后的记录内容:,3.2 表的操作,课程表建立后的记录内容 :,3.2 表的操作,成绩表建立后的记录内容:,3.2 表的操作,【例3.2】追加新记录,SET DEFAULT TO E:CJGL USE xs LIST STRUCTURE APPEND USE,追加记录窗口,3.2 表的操作,1. 浏览表记录 以表格形式浏览表记录,可直

7、接在表中边看边修改。 格式: BROWSE FIELDS 字段名表 FOR 条件 说明:FIELDS 字段名表项指定浏览窗口中出现字段名表。 字段名之间用“,”分隔。,【例3.3】浏览表记录。,SET DEFAULT TO E:CJGL SET DATE TO YMD SET CENT ON USE xs BROWSE &见图所示 USE,3.2 表的操作,浏览记录窗口,说明: 上表浏览状态,输入数据要按Ctrl+Y,在空记录中填数据。 备注型字段输入可用鼠标双击该字段区域中的 “memo”,打开备注型字段的编辑窗口,在该窗口中输入备注型内容。,3.2 表的操作,浏览窗口备注字段输入,单击窗口

8、“”按钮,退出编辑状态。可看到字段中的“memo”变成了“Memo”。,3.2 表的操作,(3) 通用字段(为照片字段)输入可用鼠标双击照片字段区域中“gen“,可以插入图像、波形声音、MIDI音乐、视频剪辑等多媒体数据。,通用字段图像粘贴,3.2 表的操作,3. 显示表记录格式1:LIST OFF 字段名表 范围 FOR 条件 WHILE条件TO PRINTER PROMPT | TO FILE 文件名格式2:DISPLAY OFF 字段名表 范围 FOR 条件 WHILE条件TO PRINTER PROMPT | TO FILE 文件名说明:字段名表项指定浏览窗口中出现字段名表。字段名间用

9、“,”分隔。范围包括下列几种情况:ALL:表的所有记录NEXT n:当前记录向后的n条记录。RECORD n:n号记录REST:从当前记录开始到文件的末尾。,3.2 表的操作,FOR 条件 表示定位符合条件的记录。“条件”的描述必须符合逻辑表达式的规则。例如:显示02部门的学生学号、姓名和总学分命令如下:SET DEFAULT TO E:CJGLSET EXACT OFFUSE xsLIST FIELDS 学号, 姓名, 总学分 FOR 学号=”02”显示结果如下:,3.2 表的操作,WHILE条件“WHILE”也是记录定位的条件。,【例3.4】显示表记录。SET DEFAULT TO E:C

10、JGLUSE xs? 学号 &显示第1个学生的学号“01040101”DISPLAY FIELDS 学号, 姓名, 总学分 WHILE 学号=”02”GO 9 &将记录指针移到9号记录DISPLAY FIELDS 学号, 姓名, 总学分 WHILE 学号=”02”,显示结果如下:,3.2 表的操作,4. 交互修改记录前面介绍的APPEND命令用于向表中追加记录,己径在 表中的记录用下列两命令进行修改。 格式1: EDIT FIELDS 字段名表 范围 FOR 条件 WHILE条件 格式2: CHANGE FIELDS 字段名表 范围 FOR 条件 WHILE条件 命令中各选项的功能与前面介绍的

11、一样,这里不再重复。,【例3.5】交互修改记录。,SET DEFAULT TO E:CJGL USE xs EDIT FIELDS 姓名, 照片 FOR 学号=”01” USE,3.2 表的操作,Edit交互修改,3.2 表的操作,5. 自动修改记录 APPEND和INSERT命令通过系统提供的窗口向表中加入 新记录,BROWSE命令以表格方式显示已加入的记录同 时加入新记录,EDIT和CHANGE命令是用于修改已加入 的记录。,格式: REPLACE 字段名 WITH 内容 ADDITIVE, 范围 FOR 条件 WHILE条件该命令将内容放入字段名字段 中,修改的记录由范围和条件指定。“内

12、容”可以是与字 段名数据类型相同的表达式。选ADDITIVE,则在原内 容后面追加 。,3.2 表的操作,【例3.6】替换字段。,SET DEFA TO E:CJGL USE xs BROWSE &显示已加入的所有记录 APPEND BLANK &追加一条空记录 LIST &在表的末尾多了一条空记录 GO BOTTOM &将记录指针移到最后一条记录 REPLACE 学号 WITH “01040107”, 姓名 WITH “吴有祥” LIST &表末尾空记录的学号和姓名字段有内容 USE,3.2 表的操作,用下列命令将文本文件中的内容送入备注型字段中。,格式:APPEND MEMO FROM O

13、VE RWRITE 选OVERWRITE,则原来的水容被加入的文件内 容取代,否则追加在原字段内容的后面。,【例3.7】备注型字段中追加。SET DEFA TO E:CJGLUSE xsGO 7 & 7号记录为陈正清APPEND MEMO 备注 FROM 陈正清.TXT OVERWRITE? xs.备注USE,3.2 表的操作,格式:APPEND GENERAL FROM 【例3.8】追加通用型字段。,SET DEFA TO E:CJGL USE xs GO 7 & 7号记录为陈正清 APPE GENERAL 照片 FROM 陈正清.BMP BROWSE &照片字段显示Gen USE,3.2

14、表的操作,7. 删除恢复记录,(1) 删除记录 格式: DELETE 范围 FOR 条件 WHILE条件 命令仅对要删除的记录作删除标志,从表中删除。 (2) 恢复删除 格式: RECALL 范围 FOR 条件 WHILE条件 该命令有删除标记记录中符合恢复条件的记录的删除标记去掉,使其成为正常记录。 (3) 彻底删除 格式: PACK 该命令对有删除标志的记录真正从表中彻底删除。,3.2 表的操作,【例3.8】删除记录。,SET DEFA TO E:CJGL USE xs BROWSE ? RECCOUNT() &显示当前表中的记录数为11 SET DELETE OFF &设置删除标记的记录

15、显示 DELETE FOR 学号=”01040107” BROWSE LIST ? RECCOUNT() &显示当前表中的记录数为11 SET DELETE ON &设置删除标记的记录不显示 BROWSE &BROWSE窗口删除标记的记录不显示 LIST &有删除标记的记录不显示 ? RECCOUNT() &显示当前表中的记录数仍为11 RECALL FOR 学号=”01040107” BROWSE &BROWSE窗口又显示学号=”01040107” LIST &主窗口又显示学号=”01040107”的记录 DELETE FOR 学号=”01040107” PACK ? RECCOUNT()

16、&显示当前表中的记录数为10 USE &保存所作的变化,3.2 表的操作,RECCOUNT()为得到当前表中的记录数的函数。,3.2 表的操作,8. 转到记录 格式1: GO TOP | BOTTOM | n 格式2: SKIP n 格式1为绝对记录定位。TOP为表中最前面的一条记录; BOTTOM为表中最后一条记录; “n”为定位的记录号。 格式2为相对记录定位。 相对记录定位是相对于当前记录移动n条记录。 0为向下移, n 0为向上移。省略n, 则默认为1。,设置SET DELETE OFF,在BROWSE窗口,删除最左边有黑方块显示,单击方块可删除标记,相当于执行当前记录恢复的命令。,3

17、.2 表的操作,【例3.9】记录定位。,SET DEFA TO E:CJGL USE xs ? RECNO() &显示当前记录号的函数, 当前记录号为1 SKIP ? RECNO() &显示当前记录号为2 GO BOTTOM ? RECNO() &显示当前记录号为10 SKIP ? EOF() &显示.T., 记录指针指向表最后一条记录 下一个,注:RECNO()为显示当前记录号的函数; EOF()为判断是否超 过表的最后一条记录的函数。,3.2 表的操作,9. 记录定位格式1: LOCATE 范围 FOR 条件 格式2: CONTINUE LOCATE命令定位符合条件第一条记录, 定位不到,

18、 EOF()为.T.。 CONTINUE命令按LOCATE条件定位下一个。,【例3.10】定位符合条件记录。,SET DEFA TO E:CJGL USE xs LOCATE FOR总学分40 DISPLAY CONTINUE DISPLAY CONTINUE DISPLAY USE,3.2 表的操作,10. 条件记录过滤 格式: SET FILTER TO 条件 设置记录过滤条件后, 满足过滤条件的记录才会显示。,【例3.11】记录过滤。,SET DEFA TO E:CJGL USE xs SET FILTER TO 专业=”电子信息工程” BROWSE & 电子信息工程专业学生记录显示 S

19、ET FILTER TO BROWSE & 浏览所有记录 USE,3.2 表的操作,11. 表函数,归纳一下常用的系统的表操作函数的功能。 EOF() 判断是否超出表的末尾。 BOF() 判断是否超出表的首行。 RECCOUNT() 得到表的记录数。 FCOUNT() 得到表的字段数。 RECNO() 得到表的记录号 。,3.3 表操作综合实例,【例3.12】设计表单,编辑课程表的记录。,选“文件”菜单“新建”菜单项文件类型选“表单”“新建文件”系统显示空白表单。 CREATE FORM Ex_EDkc,1. 设计表单,编辑课程表表单,3.3 表操作综合实例,标签(Label)控件对象,(2)

20、 文本框(TextBox)控件对象,(3) 命令按钮(CommandButton)控件对象,3.3 表操作综合实例,2. 编写事件代码,“追加”命令按钮(CommandAPPE)Click事件代码,temp=TRIM(THISFORM.TextKCH.Value) IF EMPTY(temp)RETURN ENDIF USE kc LOCATE FOR 课程号=temp IF .NOT.EOF()MESSAGEBOX(“已有该课程号!“)USERETURN ENDIF APPEND BLANK REPLACE 课程号 WITH temp, 课程名 WITH THISFORM.TextKCM.V

21、alue,类别 WITH THISFORM.TextLB.Value, 开课学期;WITH THISFORM.TextKKXQ.Value, ;学时WITH THISFORM.TextXS.Value,学分WITH THISFORM.TextXF.Value USE RETURN,3.3 表操作综合实例,“修改”命令按钮(CommandEDIT)Click事件代码,temp=TRIM(THISFORM.TextKCH.Value) IF EMPTY(temp)RETURN ENDIF USE kc LOCATE FOR 课程号=temp IF EOF()MESSAGEBOX(“没有找到该课程号

22、!“) ELSEREPLACE 课程号 WITH temp, 课程名 WITH THISFORM.TextKCM.Value, ;类别 WITH THISFORM.TextLB.Value, 开课学期;WITH THISFORM.TextKKXQ.Value, ;学时 WITH THISFORM.TextXS.Value, 学分 WITHTHISFORM.TextXF.Value USE RETURN,3.3 表操作综合实例,“删除”命令按钮(CommandDELE)Click事件代码,temp=TRIM(THISFORM.TextKCH.Value) IF EMPTY(temp)RETURN

23、 ENDIF USE kc LOCATE FOR 课程号=temp IF EOF()MESSAGEBOX(“没有找到该课程号!“) ELSEy=MESSAGEBOX(“是否要删除?“,4+32,“)IF y=6 DELETE NEXT 1PACKENDIF ENDIF USE RETURN,3.3 表操作综合实例,“查找”命令按钮(CommandLOCA)Click事件代码,temp=TRIM(THISFORM.TextKCH.Value) IF EMPTY(temp)RETURN ENDIF USE kc LOCATE FOR 课程号=temp IF EOF()MESSAGEBOX(“没有找

24、到该课程号!“)USERETURN ENDIF THISFORM.TextKCH.Value=课程号 THISFORM.TextKCM.Value=课程名 THISFORM.TextLB.Value=类别 THISFORM.TextKKXQ.Value=开课学期 THISFORM.TextXS.Value=学时 THISFORM.TextXF.Value=学分 USE THISFORM.Refresh RETURN,3.3 表操作综合实例,3. 运行表单,(1) 单击“追加”命令按钮 在“课程号”文本框中输入的内容在课程(kc)表中已存在,显示“已有该课程号!(2) 单击“修改”命令按钮 在“

25、课程号”文本框中输入的内容在课程(kc)表中不存在,显示“没有找到该课程号!” 当前课程信息取代表该课程信息。(3) 单击“删除”命令按钮 在“课程号”文本框中输入的内容在课程(kc)表中不存在,则显示“没有找到该课程号!(4) 单击“查找”命令按钮 在“课程号”文本框中输入的内容在课程(kc)表中不存在,显示“没有找到该课程号!”,3.4 表的计算,1. 记录统计,格式: COUNT 范围 FOR 条件 WHILE 条件 TO 变量名 说明:统计符合条件记录数。,【例3.13】记录统计。,SET TALK OFF &统计的过程不显示 SET DEFA TO E:CJGL USE xs COU

26、NT TO n ? “学生数”, n USE,3.4 表的计算,2. 数据求和,格式: SUM 表达式表 TO 变量名表 | TO ARRAY 数组名 范围 FOR 条件 WHILE 条件 说明:累加符合条件的表达式表的值。 无表达式表项,累加所有数值型字段;,【例3.14】数据求和。,SET TALK ON SET DEFA TO E:CJGL USE kc SUM,3.4 表的计算,命令运行结果如下:,USE xskc SUM 学分 FOR 学号=”01040101” TO sxf,USE ? sxf &显示21.00,命令运行结果如下:,3.4 表的计算,3. 数据求均值,格式: AVE

27、RAGE 表达式表 TO 变量名表 | TO ARRAY 数组名范围 FOR 条件 WHILE 条件 说明:对符合条件的表达式表的值求均值。 无表达式表项,所有数值型字段求均值;,【例3.15】数据求均值。,SET TALK ON SET DEFA TO E:CJGL USE xskc AVERAGE成绩 FOR 课程号=”0101” TO akc,命令运行结果如下:,3.4 表的计算,4. 统计计算,CALCULATE 表达式表 TO 变量名表 | TO ARRAY 数组名 范围 FOR 条件 WHILE 条件,【例3.16】统计计算。SET TALK ONSET DEFA TO E:CJG

28、LUSE xskcCALCULATE AVG(成绩), MIN(成绩), MAX(成绩), STD(成绩) FOR 课程号=“0101USE,说明: 该命令对表达式表的值进行统计计 算。,3.4 表的计算,命令运行结果如下,统计函数的功能如下: MIN(): 求最小值 。 MAX(): 求最大值。 AVG(): 求均值。 STD(): 计算标准偏差。 还有CNT()、NPV()等统计函数的功能请查手册,3.5 表与内存变量,1. 表字段到内存变量,格式: SCATTER FIELDS 字段名表 | LIKE字段描述| EXCEPT 字段名描述 MEMOTO数组名 | TO 数组名 BLANK|

29、 MEMVAR | MEMVAR BLANK | NAME 对象名 BLANK,【例3.17】表字段到内存变量。,SET TALK ON SET DEFA TO E:CJGL USE xs SCATTER MEMVAR ? m.学号, m.姓名 &显示01040101 金中华 GO 2 SCATTER NAME xs3 ? xs3.学号, xs3.姓 &显示01040102 赵 红 USE DISPLAY MEMORY,3.5 表与内存变量,内存变量到表字段,格式: GATHER FROM 数组名| MEMVAR | NAME对象名 FIELDS 字段名表 | LIKE段名描述 | EXCEP

30、T 字段名描述MEMO 该命令用数组、内存变量或对象的值更新当前表的当前记录。,【例3.18】内存变量到表字段。,SET TALK ON SET DEFA TO E:CJGL USE xskc LOCATE FOR 学号=”02040201” .AND. 课程号=”0201” ? 成绩, 学分 &显示57 0 m.成绩=60 m.学分=3 GATHER MEMVAR ? 成绩, 学分 &显示60 3 USE,3.5 表与内存变量,2. 表数据传送到数组,数组与表间、变量与表都可交换数据,通过数组传送的 数据多,速度快,还具有自动定位、使用简单方便。,格式: COPY TO ARRAY FIEL

31、DS WHILE FOR NOOPTIMIZE将当前工作区中打开的表当的指针开始若干记录的指定字段内容复制到指定数组中。,3.5 表与内存变量,3. 数组内容传送到表,格式1: APPEND FROM ARRAY FROM FIELDS 用于将数组中的内容加到当前表中,格式2: INSERT INTO FROM ARRAY | MEMVAR用于将数组或一组与表字段同名的内存变量中的内容插入或追加到指定表中。,3.5 表与内存变量,【例3.19】设计程序, 复制表中最后一条记录后再修改。,SET TALK ON SET DEFA TO E:CJGL USE xs GO BOTTOM COPY T

32、O ARRAY tarr NEXT 1 APPEND FROM ARRAY tarr &表中不能有重复的索引 EDIT USE DISPLAY MEMORY LIKE tarr*,3.6 表到表,1. 复制表记录,可将当前数据表的记录复制到另一个表,也可复制到另一个文件中并转换成指定的文件格式。,格式 COPY TO 文件名 DATABASE 数据库名 NAME 表名 FIELDS 字段名表 | LIKE字段名描述 | EXCEPT 字段名描述 范围 FOR 条件 WHILE 条件 TYPE 文件格式 | DELIMITED WITH 限定符 AS 代码页,说明:复制的目的地可以是数据库或TY

33、PE指定格式的文件。,3.6 表到表,【例3.20】用EXCEL修改表数据。,SET DEFA TO E:CJGL USE xsCOPY TO xs01 FIELDS 学号, 姓名, 总学分 FOR LEFT(学号,2)=”01”USE xs01BROWSE &显示单位 学生三个字段表记录USE,2. 复制表结构,格式: COPY STRUCTURE TO 表名 FIELDS 字段名表 WITH CDX DATABASE 数据库名 NAME 表名,说明:命令仅复制表结构,选WITH CDX,复制复合索引。选DATABASE 数据库名,复制表结构到指定数据库中。,3.6表到表,3. 追加记录,格

34、式:APPEND FROM 文件名 | ?FIELDS 字段名表 FOR 条件DELIMITED WITH 限定符 | TYPE文件格式AS 代码页,说明:当前表记录的字段由FIELDS 字段名表指定,FOR选项 指定加入的记录符合的条件。限定符可为Delimiter或BLANK 或TAB或 具体符号。文件格式为DIF、FW2、MOD、PDOX、RPD、SDF、SYLK、WK1 、WK3、 WKS、WR1、WRK、XLS和XL5。,3.6 表到表,通过AS 代码页指定被加入的文件的编码系统。WIN DOWS系统和VFP不仅支持中文,支持许多国家或地区 的不同的语言编码系统。,3.6 表到表,【

35、例3.21】用EXCEL修改表数据。,3.6 表到表,4. 数据汇总,格式: TOTAL TO 表名 ON 分组字段名 FIELDS字段名表 范围 FOR 条件 WHILE 条件,说明:对当前表中数值字段进行汇总,汇总分组字段名值相同的汇总在一起,表名指定汇总的结果的存放表。,【例3.22】汇总分组字段。SET BROWSE窗口 DEFA TO E:CJGLUSE xskcTOTAL ON 学号 FIELDS 学号,学分 TO xszxfUSE xszxfBROWSEUSE,3.6 表到表,5. 记录排序格式: SORT TO表名 ON字段1 /A | /D /C ,字段2 /A | /D /

36、C . ASCENDING | DESCENDING 范围 FOR 条件 WHILE 条件 FIELDS字段名表 | ,说明:表中的字段1、字段2、进行排序,排序结果放在表 名指定表中。选/A(默认)升序,选/D降序,选/C不区分字母的大小写。排序字段均未选/A或/D,则选ASCENDING项整个升 序,选DESCENDING 整个降序。,3.6 表到表,【例3.23】记录排序。SET DEFA TO E:CJGLUSE xsSORT TO xs01 ON 出生时间/D FOR 学号=”01”SET DATE TO YMDSET CENT ONUSE xs01BROWSE,3.7 综合实例,设

37、计界面 (1) 新建空白表单。 在命令窗口发下列命令: CREATE FORM Ex_EDxs系统自动创建了一个空白表单。 (2) 在表单中加入“数据环境”。,3.7 综合实例,(3) 系统打开“数据环境设计器”,列出当前工作目录 (E:CJGL)下可供选择的表文件。本例选xs.DBF后“确定”。,3.7 综合实例,(4) 分别将xs表中的字段拉到表单上,在“表单” 下部入4个命令按钮Command1Command4。 字拉到表单上:,段,3.7 综合实例,2. 设置对象属性,3.7 综合实例,3. 编写代码,“第一个”命令按钮(cmdTOP)的Click事件代码GO TOP Thisform

38、.Refresh“上一个”命令按钮(cmdLAST)的Click事件代码IF !BOF()SKIP 1ENDIFThisform.Refresh“下一个”命令按钮(cmdNEXT)的Click事件代码:IF !EOF()SKIPENDIFThisform.Refresh,3.7 综合实例,3. 编写代码,“最后一个”命令按钮(cmdBOTTOM)的Click事件代码GO BOTTOMThisform.Refresh“记录扫描”命令按钮(cmdSCAN)的Click事件代码SET EXACT OFFjs=0LOCA FOR 学号=”01”SCAN FOR 学号=”01”Thisform.Refr

39、eshWait “ Timeout 1 &等待1秒js=js+1ENDSCANMESSAGEBOX(“学号01打头共“+STR(js)+“人“),3.7 综合实例,4. 运行表单:,运行表单后的界面 。,习 题,1. 在VFP系统中,“.DBF”文件被称为 。A.数据库文件 B.表文件 C.程序文件 D.项目文件 2. 在VFP中,表示范围的短语REST的含义为_。 3. VFP中设置缺省文件夹的命令为_。 4. 对于xs表,下面 命令显示所有女同学记录。. LIST FOR !性别 . LIST FOR性别C. LIST FOR性别=”女” . LIST FOR性别=T 5. 若要显示KC表

40、中第4学期开设的课程, 可使用_命令。A. LIST FOR 开课学期=4 B. LIST WHILE开课学期=4C. SET FILTER TO开课学期=4 LISTD. LOCATE FOR开课学期=4 LIST,习 题,6. 若XS表包含50条记录, 执行GO TOP命令_命令显示所有记录。A. LIST ALL B. LIST REST C. LIST NEXT 50 D. LIST RECORD 50 7. 执行USE XS(回车)SKIP 1后下列显示值一定是.T.的命令 。A. ? BOF() B. ? EOF() C. ?.T. D. ? RECNO()=1 8. XS表的全部

41、备注字段的内容存储在 文件中。A. XS.DBF B. XS.TXT C. XS.FPT D. XS.DBC 9. 若VFP的命令中同时含有FOR、WHLLE和范围子句,则三个子 句执行时的优先级顺序为 。A. FOR、WHILE、范围 B. WHILE、范围、FORC. 范围、WHILE、FOR D.无优先级,按子句出现顺序执行,习 题,10 彻底删除学号01040101的同学的记录, 使用A. USE XSDELETE FOR学号=” 01040101”PACKB. USE XSSET FILTER TO学号=” 01040101”ZAPC. DELETE FROM XSCJ!XS ; W

42、HILE学号=” 01040101”PACKD. USE XSLOCATE FOR学号=”001806”DELETE FROM XSCJ!XSPACK,习 题,11. 对于表XS.DBF,执行下述程序后,=_3=_。USE XSLOCATE NEXT 5 FOR !性别X1=RECNO()X2=FOUND()LOCATE NEXT 4 FOR性别X3RECNO()X4FOUND()X5EOF()? Xl,X2,X3,X4,X5,12 .已知自由表XS1中含有20条记录,执行下列程序段后,N的值为=_。程序清单如下:USE XS1DELETE NEXT 4SET DELETED ONN=RECC

43、OUNT(),习 题,已知教师表(JS.DBF)按姓名(XM)字段建立索引阅读下列程序:USE JSSET ORDER TO XMSEEK ”王一平”IF FOUND()DISPLAYELSEWAIT WINDOW “查无此人!”ENDIF如果要用SEEK函数完成上述相同的功能,可将程序改成:USE JSSET ORDER TO XMIF _DISPLAYELSEWAIT WINDOW ”查无此人”ENDIF,习 题,14. 下列程序:N=0M=0USE JSSCAN WHILE XB=”男”N=N+1ENDSCANM=RECCOUNT()-N执行上述程序后,N=_, M=_。 15. 完善下

44、面程序段:LOCAL nn=MessageBox(“删除吗?”,4+_,”删除确认”)IF n=6SELECT jsDELETEENDIF,习 题,USE XS DO WHILE !EOF()CJ5=GETCJ5(XS.CJ)? XH, CJ5_ ENDDO CANCEL FUNCTION GETCJ5PARAMETERS nCjLOCAL djDO CASECASE nCj=90dj=”优”,已知学生成绩表(XS.DBF)中含有:学号(XH,C,6),课程代(KCDH,C,2)和成绩(CJ,N,3)字段。评定成绩等级(优、良、中、及格、不及格)自定义函数GETCJ5代码:,CASE BETWEEN(nCJ,80,89)dj=”良” CASE BETWEEN(nCJ,70,79)dj=”中” CASE BETWEEN(nCj,60,69)dj=”及格” CASE nCj60dj=”不及格”ENDCASERETURN _,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 中等教育 > 小学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报