江苏省高校计算机等级考试命题研究院 江苏省高校计算机等级考试辅导
2001年(秋Visual FoxPro(06)

2001年(秋)江苏省等级考试上机试卷
二级 Visual FoxPro (VFP06)

(本试卷上机考试时间为70分钟)

说明:1.考试语言环境为Visual FoxPro 5.0/6.0
     2.运行考试软盘A中的“上机考试”应用程序文件以输入考生的准考证号、姓名、试卷代号。
     3.启动VFP系统后,首先在命令窗口中执行命令:
      set default to A:
     以设置默认的工作目录,然后再开始作题。

一、项目、数据库和表操作

打开软盘根目录中的项目文件TEXTF,在该项目中已有一数据库SJK。
1. 按如下要求修改SJK中XS表(学生)的结构:
(1) 将xh字段的标题设置为"学号",默认值设置为"2001";
(2) 修改xm字段的宽度,使之正好能容纳4个汉字;
(3) 设置csrq字段(出生日期)的有效性规则:出生日期的年份必须在1986年之前(含1986年),并设置相应的有效性信息文本"出生年份不正确!";
(4) 将zp字段名改为pic;
(5) 创建一个普通索引xg,要求按照系名(ximing)和籍贯(jg)升序排序。
2. 把软盘根目录中的表文件xsb.dbf添加为TEXTF项目中的自由表。
3. 修改xsb表中的记录数据:修改所有记录中的xb字段(性别)的值,若字段值为"男",则改为"1", 若字段值为"女",则改为"2"。
4. SJK中表XS和CJ已存在以xh字段为索引表达式的主索引xsxh和普通索引cjxh,以xs表为主表,cj表为子表按xh建立永久关系。
5. 在SJK中的KC表和RK表之间设置参照完整性:删除级联。

二. 设计查询
1. 在TEXTF项目中已存在查询chaxuna,按如下要求设计查询:

基于xs表(学生)查询所有籍贯(jg)为非江苏籍的学生,要求输出字段为:jg,xh,xm,xb,ximing,查询结果按籍贯的升序排序。

2. 在TEXTF项目中已存在查询chaxunb ,SJK数据库中有一 VAYCJ视图,该视图显示了学生的各课程成绩以及学生所属专业名称。基于KC表和VZYCJ视图按如下要求设计该查询:

查询各课程各专业的平均成绩。要求输出字段为:kcm,所属专业,平均成绩。查询结果按平均成绩从高到抵顺序排列,查询结果的输出去向为临时表tmp。

三. 设计菜单
TESTF项目中一存在菜单MENUF,利用菜单设计器按如下要求修改菜单:
1. 按下列图示要求为数据录入菜单栏创建子菜单:

2. 已知在A盘根目下已经存在表文件XSB.DBF,为 "学生信息" 菜单项编制相应的过程,使得在执行该菜单项时,将XSB表的信息在浏览窗口中显示出来;
3. 在 "数据录入" 菜单栏前插入 "文件" 菜单栏,并为它设置热键F;
4. 在 "文件" 菜单栏下插入系统菜单栏 "关闭" (即创建子菜单 "关闭")。

四. 设计表单
根据下列要求修改项目文件中的表单文件formf, 该表单用来查看学生的基本情况。
1. 将表格的行宽改成21。
2. 将学号这一列的背景设置RGB (128,255,255)。
3. 将表格中的专业名称这一列的Controlsource 属性值设置问ZYMC。
4. 在运行时表格中不能修改,但能获得焦点。
5. 在标签控件 "学号" 后面增加一个文本框对象, 按"确定"按钮时,要求根据该文本框中输入的学号对表格内容进行过滤。如果文本框内容为空,则显示全部内容,否则显示相应学生的情况。试编码相应的事件代码完成此功能。
6. 已知XS表已经按XH建立了一个结构复合索引,索引标识为xsxh 。试编写相应的事件代码完成功能:双击"学号"列标题,表格内容按学号进行排序。
完成上述修改后运行表单,屏幕显示: