1、上机操作题-试卷 84 及答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.在考生文件夹下完成如下操作: (1)新建一个名为“图书管理”的项目。 (2)在项目中建立一个名为“图书”的数据库。 (3)将考生文件夹下的所有自由表添加到“图书”数据库中。 (4)在项目中建立查询book_qu:查询价格大于等于 10 的图书(book 表)的所有信息,查询结果按价格降序排序。(分数:2.00)_二、简单应用题(总题数:1,分数:2.00)2.(1)根据“班级学生”库中的表用 SQL SELECT 命令查询学生的学号、姓名、课程号和成绩,结果按“课程号”降序
2、排序,“课程号”相同时按“成绩”降序排序,并将查询结果存储到 cjb 表中,将使用的 SQL语句保存到 mysq1txt 中。(2)使用表单向导选择“学生”表生成一个名为 myform1 的表单。要求选择“学生”表中所有字段,表单样式为“浮雕式”;按钮类型为“图片按钮”;排序字段选择“学号”(降序);表单标题为“学生基本情况输入维护”。(分数:2.00)_三、综合应用题(总题数:1,分数:2.00)3.(1)student 是一个“学生”表,其中包含学号(C 8)、姓名(C 8)、性别(C 2)、政治面目(C 4)、班级(C 5)等字段。考生文件夹下的 modi1prg 程序文件的功能是显示输
3、出所有政治面目为“群众”的“男”生的姓名和班级,每行输出一个学生的信息;程序中有三处错误,请加以改正。 说明:程序中*ERROR FOUND*的下一行即为错误所在行。请用改正后的程序行覆盖错误所在行,不要插入或删除任何程序行。(2)建立命令文件 sprogprg,该命令文件包含如下两条语句: 第一条语句使用 SQL UPDATE 命令计算和更新 student 表的年龄字段值(计算年龄的表达式是 year(dat()-yea(出生日期)。 第二条语句使用 SQL SELECT 命令查询各种“政治面目”的学生人数和平均年龄,并将结果存储于表sqlresults (字段名是政治面目、人数和平均年龄
4、)。 说明:以上命令文件必须执行,并产生所要求的结果。(分数:2.00)_上机操作题-试卷 84 答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.在考生文件夹下完成如下操作: (1)新建一个名为“图书管理”的项目。 (2)在项目中建立一个名为“图书”的数据库。 (3)将考生文件夹下的所有自由表添加到“图书”数据库中。 (4)在项目中建立查询book_qu:查询价格大于等于 10 的图书(book 表)的所有信息,查询结果按价格降序排序。(分数:2.00)_正确答案:(正确答案:本大题考查了项目管理器建立和使用;在项目管理器中建立数据库和查询。 (
5、1)在命令窗口执行命令:CREATE PROJECT 图书管理,新建一个项目管理器。 (2)在项目管理器中,选中“数据”选项卡内的“数据库”项,然后单击“新建”按钮,在弹出的“新建数据库”对话框中单击“新建数据库”图标按钮,然后在弹出的“创建”对话框的“数据库名”框中输入“图书”,单击“保存”按钮新建一个数据库并打开数据设计器。 (3)在数据库设计器中右击鼠标,选择【添加表】快捷菜单命令,在弹出的“打开”对话框中双击 book 表,将表添加到数据库中。以同样的方法将 borrows 表和 loans 表也添 加到数据库中。 (4)在项目管理器中,选中“数据”选项卡内的“查询”项,然后单击“新建
6、”按钮,在弹出的“新建查询”对话框中单击“新建查询”图标按钮,打开查询设计器,在“添加表或视图”对话框中,双击 book 表,将表添加到查询设计器中。 根据题目要求,在“字段”选项卡的“可用字段”中,将全部字段都添加到“选定字段”列表中。 在“筛选”选项卡内的“字段名”下拉列表框中选择“book价格”,在“条件”下拉列表框中选择“=”,在“实例”下拉列表框中输入:10。 在“排序依据”选项卡内双击“选定字段”列表框中的“价格”,将其添加到“排序条件”列表框中,在“排序选项”中选择“降序”。 最后单击“常用”工具栏中的“运行”按钮查看结果,将查询文件以文件名book_qu 保存到考生文件夹下。)
7、解析:二、简单应用题(总题数:1,分数:2.00)2.(1)根据“班级学生”库中的表用 SQL SELECT 命令查询学生的学号、姓名、课程号和成绩,结果按“课程号”降序排序,“课程号”相同时按“成绩”降序排序,并将查询结果存储到 cjb 表中,将使用的 SQL语句保存到 mysq1txt 中。(2)使用表单向导选择“学生”表生成一个名为 myform1 的表单。要求选择“学生”表中所有字段,表单样式为“浮雕式”;按钮类型为“图片按钮”;排序字段选择“学号”(降序);表单标题为“学生基本情况输入维护”。(分数:2.00)_正确答案:(正确答案:(1)步骤 1:在命令窗口执行命令:MODIFY
8、FILE mysq1,打开文本编辑器编写 SQL命令。 步骤 2:在编辑器中输入如下程序代码(以下程序是通过查询设计器生成): SELECT 学生学号,学生姓名,成绩课程号,成绩成绩; FROM 班级学生!学生 INNER JOIN 班级学生!成绩; ON 学生学号=成绩学号; ORDER BY 成绩课程号 DESC,成绩成绩 DESC; &查询结果先按“课程号”降序,再按“成绩”降序 INTO TABLE cjbdbf 步骤 3:在命令窗口执行命令:DO mysq1txt,执行文件(注意:执行文件时,文件后缀名txt 不能缺省)。 (2)步骤 1:在命令窗口执行命令:OPEN DATABAS
9、E 班级学生,打开数据库环境。 步骤 2:执行【文件】【新建】菜单命令,或单击“常用”工具栏的“新建”按钮,在弹出的“新建”对话框中选中“表单”选项,然后单击“向导”图标按钮,系统弹出“向导选取”对话框,选中“表单向导”项,单击“确定”按钮,启动表单向导。 步骤 3:在表单向导的“步骤 1-字段选取”界面的“数据库和表”下选中“学生”表,将“可用字段”中的字段全部添加到“选定字段”中,单击“下一步”按钮。 步骤 4:在表单向导的“步骤 2-选择表单样式”界面中选中“样式”列表中的“浮雕式”,再在“按钮类型”选项中选中“图片按钮”,单击“下一步”按钮。如图2-16 所示。 步骤 5:在表单向导的
10、“步骤 3-排序次序”界面中双击“可用的字段或索引标识”中的“学号”字段到“选定字段”列表中,然后选中“降序”选项,单击“下一步”按钮。如步骤 6:在表单向导的“步骤 4-完成”界面中的“请键入表单标题”下方文本框中输入“学生基本情况输入维护”,单击“完成”按钮。如图 2-18 所示。 步骤 7:在“另存为”对话框的“保存表单为:”框中输入表单文件名myform1,单击“保存”按钮。 (1)本题主要考查的是 SQL 联接查询。查询中需要涉及“学生”表和“成绩”表中的记录,通过“学号”字段可以建立两个表的联系,在输出查询结果时,利用 DESC 短语可以指定将结果按字段的降序排序,并通过 INTO
11、TABLE 短语将查询结果输出到指定的表中保存。 (2)本题考查的是表单向导的使用,属于比较简单的操作。在启动向导前,可以先打开数据库环境,这样在启动向导添加数据表时,可在向导中直接选中,否则需要通过在“打开”对话框中选择数据表。本题只需根据向导提示在各界面中完成相应的操作即可。)解析:三、综合应用题(总题数:1,分数:2.00)3.(1)student 是一个“学生”表,其中包含学号(C 8)、姓名(C 8)、性别(C 2)、政治面目(C 4)、班级(C 5)等字段。考生文件夹下的 modi1prg 程序文件的功能是显示输出所有政治面目为“群众”的“男”生的姓名和班级,每行输出一个学生的信息
12、;程序中有三处错误,请加以改正。 说明:程序中*ERROR FOUND*的下一行即为错误所在行。请用改正后的程序行覆盖错误所在行,不要插入或删除任何程序行。(2)建立命令文件 sprogprg,该命令文件包含如下两条语句: 第一条语句使用 SQL UPDATE 命令计算和更新 student 表的年龄字段值(计算年龄的表达式是 year(dat()-yea(出生日期)。 第二条语句使用 SQL SELECT 命令查询各种“政治面目”的学生人数和平均年龄,并将结果存储于表sqlresults (字段名是政治面目、人数和平均年龄)。 说明:以上命令文件必须执行,并产生所要求的结果。(分数:2.00
13、)_正确答案:(正确答案:(1)步骤 1:在命令窗口执行命令:MODIFY COMMANDmodi1,打开程序文件,文件中的命令代码如下: SET TALK OFF USE student LOCATE FOR 政治面目=“群众“ “*error* DO WHILENOTFOUND() IF 性别=“男“ CONT INUE *error* BREAK ENDIF ?姓名,班级 *error* SKIP ENDDO USE SET TALK ON 修改程序中的错误行,修改后的程序如下: SET TALK OFF USE student &打开 student表 LOCATE FOR 政治面目=
14、“群众“&查找当前记录的“政治面目”为“群众”DO WHILE FOUND() &循环条件为找到“政治面目”为“群众”的记录时进入循环 IF 性别=“男“ & 如果性别为“女”,继续执行下面的语句,否则执行 ENDIF 语句之后的语句 CONTINUE &返回到循环体起始位置继续重新判断下一条记录“政治面目”值是否为“群众”LOOP &返回到循环体起始位置,即 DO WHILE 处重新判断,不再执行后面的语句 ENDIF &当 IF 处条件不成立时,直接执行该语句后面的命令 ? 姓名,班级 & 当前面的 IF 条件语句成立时,执行该语句,显示当前记录的“姓名”和“班级”值 CONTINUE &
15、返回到循环体起始位置继续重新判断下一条记录“政治面目”值是否为“群众”ENDDO &当 DO WHILE 处条件不成立时,直接退出循环体,执行该语句后面的命令 USE &关闭当前打开的表 SET TALK ON 步骤 2:保存文件修改,在命令窗口执行命令:DO modilprg,执行程序文件。 (2)步骤 1:在命令窗口执行命令:MODIFY COMMAND Msprog,打开程序文件编辑器。 步骤 2:在程序文件编辑器中输入如下代码(相关 SOL 查询语句是通过查询设计器生成): UPDATE student SET 年龄=YEAR(DATE()-YEAR(出生日期) SELECT STUDENT政治面目,COUNT(STUDENT学号)AS 人数,AVG(STUDENT年龄) AS 平均年龄; FROM student; GROUP BY student政治面目; INTO TABLE sqlresultsdbf 步骤 3:保存文件修改,在命令窗口执行命令:DO sprogprg,执行程序文件。)解析:
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1