单选题
(25)~(33)小题使用的数据表如下:
当前盘当前目录下有数据库:大奖赛.dbc,其中有数据库表“歌手dbf”、“评分.dbf”。
“歌手”表:
“评分”表:
单选题
为“歌手”表增加一个字段“最后得分”的SQL语句是( )。
【正确答案】
A
【答案解析】 [解析] 修改字段属性的命令的语法格式是;ALTER TABLE TableName1 ALTER FieldName2 FieldType[nFieldWidth],从4个候选项中可以看出,只有选项A是正确的。选项C和D关键字CHANGE有误,而选项B用来指定表的短语DBF错误。
单选题
插入一条记录到“评分”表中,歌手号、分数和评委号分别是“1001”、9.9和“105”,正确的SQL语句是( )。
【正确答案】
C
【答案解析】 [解析] 使用SQL语言向表中插入数据的命令是INSERT INTO,命令格式为:INSERT INTO<表名>[(字段名1[,字段名2,...])VALUES(表达式1[,表达式2,...])或INSEERT INTO<表名>FROM ARRAY<数组名>|FROM MEMVAR,作用是在表尾插入一条记录。而在本题的4个选项中:选项A的顺序不正确,选项B则使用了错误的关键字TO,选项D除了顺序不正确之外,还使用了错误的关键字 TO。
单选题
假设每个歌手的“最后得分”的计算方法是;去掉一个最高分和一个最低分,取剩下分数的平均分。根据“评分”表求每个歌手的“最后得分”并存储于表TEMP中,表TEMP中有两个字段:“歌手号”和“最后得分”,并且按最后得分降序排列,生成表TEMP的SQL语句是( )。
【正确答案】
D
【答案解析】 [解析] 根据题意,在此SQL语句中,首先要根据“歌手号”分组计算出每个歌手的总成绩,然后去掉该歌手的最高分及最低分,并且根据评委人数(减去两个去掉分数的评委数量)来计算平均分,将结果保存在表TEMP中,并按照“最后得分”的降序排列。在此题选项中,选项A及选项B在计算歌手总分数时使用了错误的函数COUNT,并在计算评委人数时使用了错误的函数SUM,所以不正确。而选项C虽然使用了正确的函数,但用来指定分组的GROUP BY 子句后面错误地使用了“评委号”字段(应当使用“歌手号”字段),所以也不正确。选项D正确表达了题意,所以为正确答案。
单选题
与“SELECT* FROM歌于WHERE NOT(最后得分>9.00 OR最后得分<8.00)”等价的语句是( )。
【正确答案】
B
【答案解析】 [解析] 题干中SELECT语句的意义为:选择出“歌手”表中所有“最后得分”字段中值不大于9.00(包括9.00)及不小于8.00(包括8.00)记录的所有字段,因此选项C中SQL语句的意义为选出“歌手”表中所有“最后得分”字段值大于9.00或小于8.00的记录,与题意不符。选项D中SQL语句的意义为选出“歌手”表中所有“最后得分”字段值小于等于9.00或大于等于8.00的记录,与题意不符。选项A有中使用了BETWEEN... AND... 表达式,但当BETWEEN作取值范围限定时,包括限定条件的两个端点值,并且使用BETWEEN... AND... 的两个限定值应当遵循从小到大的原则,而此题正好相反,所以不可能查询出结果,故也为错误答案。
单选题
为“评分”表的“分数”字段添加有效性规则:“分数必须大于等于。并且小于等于10”,正确的SQL语句是( )。
【正确答案】
B
【答案解析】 [解析] 本题考查使用SQL对表文件的字段进行有效性设置。可以使用命令ALTER TABLE来实现对表的字段进行有效性设置,选项A和选项D错误在于使用了错误的关键字CHANGE,选项C缺少子句关键字SET。
单选题
根据“歌手”表建立视图myview,视图中含有包括了“歌于号”左边第一位是“1”的所有记录,正确的SQL语句是( )。
【正确答案】
A
【答案解析】 [解析] SQL 中创建视图的命令格式是:CREATE VIEW view_ hame [ ) cloumn_ name[, column name]...)]AS select_ statment,在本题中,因为其缺少AS关键字,故选项C及选项D错误,选项B错误,因为使用了错误的函数LIKE。
单选题
删除视图myview的命令是( )。
【正确答案】
D
【答案解析】 [解析] 删除视图的命令格式为DROP VIEW<视图名>,用来删除指定名称视图。
单选题
假设temp. dbf数据表中有两个字段“歌手号”和“最后得分”。下面程序段的功能是:将temp. dbf中歌手的“最后得分”填入“歌手”表对应歌手的“最后得分”字段中(假设已增加了该字段)。在下划线处应该填写的SQL语句是( )。 USE 歌手 DO WHILE. NOT. EOF () ______________ REPLACE 歌手 .最后得分 WITH a[2] SKIP ENDDO
【正确答案】
B
【答案解析】 [解析] 根据题干可以看出,该程序首先将“歌手”表中当前记录的歌手号在temp表中的记录值存放在数组a中,然后再将其“最后得分”字段的值替换为数组中的值,所以该处应当填写如何将 temp表中相应记录值输出的数组a中的SQL语句。在SQL语句中,指定在数组中保存查询结果的子句为INTO ARRAY<数组名>,所以选择选项B。
单选题
与“SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分>=ALL; (SELECT 最后得分 FROM 歌手 WHERE SUBSTR (歌手号,1,1)=“2”)”等价的SQL语句是( )。
【正确答案】
A
【答案解析】 [解析] 题干中的SQL语句的功能是:查询“最后得分”比“歌手号”字段中第一个字符为“2”(SUBSTR(歌于号,1,1)=“2”)的歌手的“最后得分”高的歌手号。在本题中4个选项中只有选项A中的查询条件与此等价,用(SELECT MAX(最后得分)FROM... WHERE...)实现选择出最高的最后得分。选项B的查询条件表示最后得分大于“歌手号”字段中第一个字符为“2”的歌手的最低的“最后得分”。选项C和D中的ANY和SOME是同义词,表示查询出只要“歌手号”字段中第一个字符为“2”的歌手任何一个最后得分高的记录即可。
提交答案
关闭