首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
(1)用SQL语句查询至少有三门的课程成绩在70分以上(包括70分)的学生姓名,并将结果按升序存入表文件results.dbf,然后将该SQL语句粘贴在SQL.TXT文件的第二行(只占一行)。 (2)modi.prg程序的功能是:先为“学生”表增加
(1)用SQL语句查询至少有三门的课程成绩在70分以上(包括70分)的学生姓名,并将结果按升序存入表文件results.dbf,然后将该SQL语句粘贴在SQL.TXT文件的第二行(只占一行)。 (2)modi.prg程序的功能是:先为“学生”表增加
admin
2013-06-10
25
问题
(1)用SQL语句查询至少有三门的课程成绩在70分以上(包括70分)的学生姓名,并将结果按升序存入表文件results.dbf,然后将该SQL语句粘贴在SQL.TXT文件的第二行(只占一行)。
(2)modi.prg程序的功能是:先为“学生”表增加一个“平均成绩”字段,数据类型为N(6,2):然后根据“选课”表统计每个学生的平均成绩,并写入新添加的字段。
该程序有三处错误,请改正,使程序能正确运行(在指定处修改,不允许增加或删除程序行)。
选项
答案
(1)①在命令窗口输入如下SQL查询代码(以下SQL查询语句是通过查询设计器生成): SELECT 学生.姓名; FROM 成绩管理!学生 INNER JOIN成绩管理!选课; ON 学生.学号=选课.学号; WHERE 选课.成绩>=70; ORDER BY 学生.姓名; GROUP BY 学生.学号; HAVING COUNT(选课.课程号)>=3; INTO TABLE results.dbf ②在命令窗口执行命令:
MODIFY FILE SQL
,打开文本文件编辑器。将命令窗口的查询语句复制到SQL文本文件中。 (2)步骤1:在命令窗口执行命令:
MODIFY COMMAND modi
,打开程序文件,文件中的命令代码如下: CLOSE ALL OPEN DATABASE 成绩管理 USE 选课 IN 0 USE 学生 EXCL IN 0 *****Error***** DO WHILE EOF() SELECT AVG(成绩)FROM选课WHERE学号=学生.学号INTO ARRAY cj *********Error********* REPLACE 平均成绩=cj[1] cj[1]=0 SKIP ENDDO CLOSE DATABASE 修改程序中的错误行,修改后的程序如下: 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 cj[1] cj[1]=0 SKIP ENDDO CLOSE DATABASE 步骤2:保存文件修改,在命令窗口执行命令:
DO MODI
,执行程序文件。
解析
(1)本题主要考查的是SQL分组计算的查询。根据题目要求,SQL语句主要设计思路如下:
首先对“学生”和“选课”表进行联接,联接条件为两个表中“学号”相同的记录;接着筛选表中成绩大于70的所有记录(通过WHERE短语指出),对筛选后的记录接“学号”字段分组(通过GROUP BY短语分组),然后通过HAVING语句进一步限定分组条件,要求统计每组学号中“课程号”记录总数大于等于3,这样便可得出至少有三门课程成绩在70分以上的学生记录;查询结果最终保存在results表中,输出字段只包括学生的“姓名”字段。
(2)【本题主要考查了SQL定义功能;SQL简单计算查询;DO WHILE循环;Visual FoxPro修改记录命令。题目所提供的源程序功能大致如下:
首先打开“成绩管理”数据库,并打开库中的数据表“选课”和“学生”;接着利用SQL定义功能修改表结构;然后利用DO WHILE循环,依次计算“选课”表中每个学生的平均成绩,计算条件为“选课”表中的“学号”字段值等于“学生”表中当前记录的“学号”字段值,荆将均成绩保存到数组中;最后利用Visual FoxPro修改记录命令REPLACE将数组中的值赋给“学生”表的“平均成.绩”字段。
本题第一处错误是表结构修改语句的错误,为表增加字段的关键字是ADD而不是ALTER,ALTER只能用来修改已存在的字段;第二处错误是DO WHILE循环格式错误,缺少WHILE短语;第三处错误是修陡记录命令格式错误,指定修改值的短语为WITH而不是SET。
转载请注明原文地址:https://jikaoti.com/ti/uxT0FFFM
本试题收录于:
二级VF题库NCRE全国计算机二级分类
0
二级VF
NCRE全国计算机二级
相关试题推荐
设教师表的结构为:教师号、姓名、性别、职称、工资、所在系。若要查询“陈静”教师所讲授的课程,并列出姓名和课程名,应使用的SELECT语句是______。
查找教师表中教师最高的工资值,下列SQL语句正确的是
要查看菜单项所属的级别,可单击菜单设计器窗口右侧
用子查询的方式查询与“陈静”教师职称相同的教师姓名、性别及职称。请对下列的SELECT语句填空:SELECT姓名,性别,职称FROM教师表WHERE职称=【】
在创建学生表时,要将入校总分字段定义为3位整数,且入校总分应在500~600分之间,其列定义为【】。
打开GZ表文件后,先执行了命令SETINDEXTOZGH,SFGZ,GWZG,BJT之后,在不重新打开索引的情况下,要将GW_ZG.idx指定为索引,应使用命令【】。
Jackson结构化程序设计方法是英国的M.Jackson提出的,它是一种面向【】的设计方法。
对VFP中表单的描述正确的是()。
数据库VisualFoxPro中使用的变量类型有()。
随机试题
患儿男,10岁。曾“感冒”,发热;10天后出现眼睑水肿,尿色如茶水。体检:颜面及眼睑均有轻度水肿,血压120/90mmHg(16/12kPa);心肺正常。肝右肋下1cm,质中硬,轻度压痛;双肾区轻微叩击痛。尿蛋白(++),尿镜检RBC满视野/HP,WBC
男,32岁,发热5天,伴头痛、腰痛、乏力、纳差、尿黄。查体:神清,酒醉貌,皮肤可见少数出血点,肝功能丙氨酸转氨酶(ALT)504U/L,胆红素(BiL)98μmol/L,血小板30×109/L,尿蛋白(++)该患者首先考虑的诊断是
非医师行医的,由县级以上卫生行政部门予以取缔外,还应( )
下列说法不正确的是()。
为了重新排列桌面上的图标,首先应进行的操作是()。
下列各句中,标点符号使用正确的一句是()。
甲遗失手机一部,被乙拾得。为找回手机,甲发布了寻物启事,悬赏1000元。后甲知道手机被乙拾得,甲要求乙返还,乙索要1000元报酬。甲不同意。后乙在桥边玩耍时手机掉入河中被冲走。对此,下列表述正确的是()
甲、乙、丙和丁四人各饲养了猫、狗、鹦鹉和热带鱼中的一种或两种。现已知:甲、乙、丙各饲养了两种宠物,丁只饲养了一种宠物;有一种宠物四人中有三人都有饲养;甲每周末都要去商店买狗粮,丁因为小时被狗咬过,因此绝对不会养狗;乙家中没有鱼缸;甲与丙、丙与丁之间没有饲养
下列公民的基本权利中,属于社会经济权的是()
阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。[说明]防火墙是一种广泛应用的网络安全防御技术,它阻挡对网络的非法访问和不安全的数据传递,保护本地系统和网络免于受到安全威胁。图3—1给出了一种防火墙的体系结构。[问题1]防火
最新回复
(
0
)