1、上机操作题模拟试卷 15及答案与解析 一、基本操作题 1 在考生文件夹下完成下列操作 (在 “成绩管理 ”数据库中完成 ): (1)为 “学生 ”表在 “学号 ”字段上建立升序主索引,索引名为学号。 (2)为 “学生 ”表的 “性别 ”字段定义有效性规则,规则表达式为:性别 $”男女 ”,出错提示信息是: “性别必须是男或女 ”。 (3)在 “学生 ”表的 “性别 ”和 “年龄 ”字段之间插入一个 “出生日期 ”字段,数据类型为“日期型 ”(修改表结构 )。 (4)用 SQL,的 IYPDATE命令将学生 “王三风 ”的出生日期修 改为 1983年 5月 1日,并将该语句粘贴在 sqLtxt文
2、件中 (第一行且只占一行 )。 二、简单应用题 2 (1)用 SQL,语句查询至少有三门的课程成绩在 70分以上 (包括 70分 )的学生姓名,并将结果按升序存入表文件 results dbf,然后将该 SQr,语句粘贴在SQL TXT文件的第二行 (只占一行 )。 (2)modi prg程序的功能是:先为 “学生 ”表增加一个 “平均成绩 ”字段,数据类型为N(6, 2);然后根据 “选课 ”表统计每个学生的平均成绩,并写入新添加的字段。 该程序有三处错误,请改正,使程序能 正确运行 (在指定处修改,不允许增加或删除程序行 )。 三、综合应用题 3 根据 “成绩管理 ”数据库中的 “学生 ”
3、、 “课程 ”和 “选课 ”三个表建立一个名为 view grade的视图,该视图包含 “学号 ”、 “姓名 ”、 “课程名称 ”和 “成绩 ”四个字段,并要求先按 “学号 ”升序排序、在 “学号 ”相同的情况下按 “课程名称 ”降序排序。 建立一个表单 grade list(控件名为 forml,文件名为 grade-list),表单中含有一个表格 (名称为 grdView-grade)控件, 该表格控件的数据源是前面建立的视图 view grade (直接使用拖拽的方法 );然后在表格控件下面添加一个命令按钮 (名称为 Coandl),该命令按钮的标题为 “退出 ”,要求单击按钮时关闭表单
4、。 注意:完成表单设计后要运行表单的所有功能。 上机操作题模拟试卷 15答案与解析 一、基本操作题 1 【正确答案】 本题考查了表索引的建立;字段有效性规则的建立;表结构修改和 SQL更新语句。 表索引也可以在表设计器中建立,在表设计器的 “字段 ”选项卡中可先建立一个普通索引,然后在 “索引 ”选项卡中修改索引类型。 字段有效性规则是在表设计器中建 立的, “默认值 ”、 “规则 ”和 “信息 ”的设置均属于字段有效性规则范围,在输入各有效性规则的值时要注意对应的数据类型,且在表设计器中可在字段任意间位置插入新字段。 利用 SQL uPDATE语句可以更新表中记录,本题只需熟记 SQL更新语
5、句,直接套用即可完成表记录的更新。 【操作步骤】 (1) 在命令窗口执行命令: MOD工 FY DATABASE成缝管理,打开 “成绩管理 ”数据库设计器。 右击数据库设计器中的 “学生 ”表,选择【修改】快捷菜单命令,打开 “学生 ”表设计器,在 “字段 ”选项卡中 选中 “学号 ”,在 “索引 ”列中选择 “升序 ”,然后将 “索引 ”选项卡中 “学号 ”的 “类型 ”更改为 “主索引 ”。 (2)接上小题操作,在 “学生 ”表设计器中选中 “字段 ”选项卡中的 “性别 ”字段,在“字段有效性 ”的 “规则 ”文本框中输入:性别 $It男女 ”,在 “信息 ”文本框中输入: ”性别必须是男
6、或女 ”。 (3)接上小题操作,在 “学生 ”表设计器中选中 “字段 ”选项卡中的 “年龄 ”字段,然后单击表设计器右边的 “插入 ”按钮,插入一个新字段行,修改 “字段名 ”为:出生日期,修改 “类型 ”为:日期型。单击 “确定 ”按钮保存表修改。 (4) 在命令窗口执行命令: MODIFY FILE SQL,打开文本文件编辑器。 在编辑器中输入 SQ。更新记录的代码: uPDATE学生 SET出生日期 =1 983-05-01 WHERE姓名 =”王三风 ” 在命令窗口执行命令: DO SQLL TXT,执行文本文件。 【知识模块】 上机操作题 二、简单应用题 2 【正确答案】 本题主要考
7、查的是 SQL分组计算的查询。根据题目要求, SQL语句主要设计思路如下: 首先对 “学生 ”和 “选课 ”表进行联接,联接条件 为两个表中 “学号 ”相同的记录;接着筛选表中成绩大于 70的所有记录 (通过 WHERE短语指出 ),对筛选后的记录按 “学号 ”字段分组 (通过 GROUP BY短语分组 ),然后通过 HAVING语句进一步限定分组条件,要求统计每组学号中 “课程号 ”记录总数大于等于 3,这样便可得出至少有三门课程成绩在 70分以上的学生记录;查询结果最终保存在 results表中,输出字段只包括学生的 “姓名 ”字段。 【操作步骤】 在命令窗口输入如下 SQL查询代码 (以
8、下 SQL查询语句是通过查询设计器生成 ): SELECT学生姓名; FROM成绩管理 !学生工 NNER JoIN成绩管 理 !选课; ON学生学号:选课学号; WHERE选课成绩 =70; ORDER BY学生姓名; GROUP BY学生学号; HAVING COUNT(选课课程号 ): 3; INTO TABI E resuitS dbf 在命令窗口执行命令: MODIFY FILE SQL,打开文本文件编辑器。将命令窗口的查询语句复制到 SQL文本文件中。 (2)本题主要考查了 SQL定义功能; SQL简单计算查询; DO WHILE循环; Visual FoxPro修改记录命令。题目
9、所提供的源程序功能大致如下: 首先打开 “成绩管理 ”数据库,并打开库中的数据表 “选课 ”和 “学生 ”;接着利用 SQL定义功能修改表结构;然后利 用 DO WHILE循环,依次计算 “选课 ”表中每个学生的平均成绩,计算条件为 “选课 ”表中的 “学号 ”字段值等于 “学生 ”表中当前记录的 “学号 ”字段值,并将平均成绩保存到数组中;最后利用 Visual FoxPro修录命令 REPLACE将数细中的值赋给 “学生 ”表 的 “平均成绩 ”字段。 本题第一处错误是表结构修改语句的错误,为表增加字段的关键字是 ADD而不是 ALTER, ALTER只能用来修改已存在的字段;第二处错误是
10、 DO WHILE循环格式错误,缺少 WHILE短语;第三处错误是修改记录命令格式错误,指定修改值的短语为 WITH而不是 SET。 步骤 1:在命令窗口执行命令: MODIFY COMMANDmodi,打开程序文件,文件中的命令代码如下: OPEN DATABASE成绩管理 USE选课 IN 0 USE学生 EXCL IN 0 *Errot* MODIFY TABLE学生 ADD平均成绩 N(6, 2) SELECT学生 *Error* DO WHILE EOF() SELECT AVG(成绩 )FROM选课 WHERE学 号 =学生学号 INTO ARRAY cj *rror* REPLA
11、CE平均成绩 =cj1 cj1=0 SKIP ENDDO DA个 ABASE 修改程序中的错误行,修改后的程序如下: CLOSE ALL OPEN DATABASE成绩管理 USE选课 IN 0 USE学生 EXCL IN 0 ALTER TABLE学生 ADD平均成绩 N(6, 2) SELECT学生 DO WHILE NOT EOF() SELECT AVG(成绩 )FROM选课 WHERE学号:学生学号 INTO ARRAY cj REPLACE平均成绩 WITH cj1 cj1=O SKIP ENDDO DATABASE 步骤 2:保存文件修改,在命令窗口执行命令: DO MODI,执
12、行程序文件。 【知识模 块】 上机操作题 三、综合应用题 3 【正确答案】 本大题考查了表单的常用属性、事件和方法;表单数据环境;视图的建立。 本大题首先可以通过 SQL语句或视图设计器创建一个视图文件,该视图创建过程比较简单,注意输出字段均来自哪个数据表即可,另外,在创建视图前要先打开保存视图的数据库文件。 通过拖放表单数据环境中的表到表单中,可快速建立表格及表格与数据表的联系,要注意的是在向每个页面中添加表格数据对象时,一定要注意页面处于 “编辑 ”状态下 (每个页面都可单独选定 ),否则添加的表格对象只是停留在页框上方,该表格实际是包含在表单中而非添加到页框的页面中。控制页框中页面数的属
13、性为PageCount,该属性为页框控件最重要的属性之一。 步骤 1:在命令窗口执行如下 SQL命令语句建立视图: OPEN DATABASE成绩管理 CREATE view viewgrade AS; SELECT学生学号,学生姓名,课程课程 名称,选课成绩; FROM成绩管理 !学生 INNER JOIN成绩管理 !选课; INNER JOIN成绩管理 !课程; ON选课课程号 =课程课程号; ON学生学号 =选课学号; ORDER BY学生学号,课程课程名称 (注意:以上 SQL语句查询语句部分是通过视图设计器生成,:大家也可以直接在视图设计器中建立。 ) 步骤 2:在命令窗口执行命令:
14、 CREATE FORMgradelist,打开表单设计器新建表单。向表单中添加一个命令按钮 (Commandl),并在 “属性 ”面板中修改命令按钮的“Caption”属性值为:退出。 步骤 3:右击表单选择【数据环境】快捷菜单命令,继续在表单数据环境中单击右键选择【添加】快捷菜单命令,在 “添加表或视图 ”对话框中单击 “视图 ”单选项,再双击 viewgrade视图文件到表单数据环境中,然后将数据环境中的 view grade视图在拖放到表单上形成表格控件。 步骤 4:双击 “退出 ”命令按钮,编写按钮的 Click事件代码:THIsFORM RELEASE。 步骤 5:单击 “常用 ”工具栏中的 “运行 ”按钮查看结果,将表单文件保存到考生文件夹下。 【知识模块】 上机操作题