形考任务2
第4章SQL语言基础与关系表(本章共20分)
一.单项选择题(每题1分,共10分)
所述功能中,不属于SQL语言功能的是()。
正确答案是:提供方便的用户操作界面功能
设某职工表中有用于存放年龄(整数)的列,最适合年龄列的类型是()。
正确答案是:tinyint
用于限制列的取值范围的约束是()。
正确答案是:CHECK
用于限制列的取值不能重复的约束是()。
正确答案是:UNIQUE
用于实现实体完整性约束的是()。
正确答案是:PRIMARYKEY
关于DEFAULT约束的说法,错误的是()。
正确答案是:在列级完整性约束和表级完整性约束处都可以定义DEFAULT约束
为变量赋值的语句中,错误的是()。
正确答案是:SET@X=10+’A’
设有表T,现要为该表新增加一个列,列名为:c1,类型为int。能正确实现该功能的语句是()。
正确答案是:ALTERTABLETADDc1int
属于普通编码可变长字符串类型的是()。
正确答案是:real
现要定义“工作年限”列的数据类型,假设用整型类型,且其值不会超过100,则最合适的类型是()。
正确答案是:smallint
二.判断题(每题1分,共5分)
decimal(p,s)数据类型属于字符型。()
正确答案是:错
/**/之间的内容用于表示注释,对程序无影响。()
正确答案是:对
‘tell’+236的结果为:tell236。()
正确答案是:错
“SsexNCHAR(1)DEFAULT’女’”语句中的DEFAULT约束表示Ssex变量的默认值为’女’。()
正确答案是:对
“SageTINYINTCHECK(Sage>=18ANDSage<=60)”限定Sage的取值只能在18到60之间。()
正确答案是:对
三、简答题(本题共5分)
简述SQL语言的功能,每个功能的作用是什么?(本题3分)
正确答案是:SQL按其功能可分为四大部分:数据定义、数据控制、数据查询和数据操作。数据定义功能用于定义、删除和修改数据库中的对象;数据查询功能用于实现查询数据的功能,查询数据是数据库中使用最多的操作;数据操作功能用于增加、删除和修改数据;数据控制功能用于控制用户对数据库的操作权限。
Transact-SQL支持的主要数据类型有哪些?(本题2分)
正确答案是:数值类型(包括准确数值类型和浮点数值类型)、字符串类型(包括统一字符编码的字符串类型和普通字符编码的字符串类型)、日期时间类型以及二进制数据类型。
第5章数据操作语言(本章共20分)
一.单项选择题(每题1分,共10分)
当关系R和S进行连接操作时,如果R中的元组不满足连接条件,在连接结果中也会将这些记录保留下来的操作是()。
正确答案是:左外连接
聚合函数中,不忽略空值的是()。
正确答案是:COUNT(*)
查询语句中,错误的是()。
正确答案是:SELECTSnoFROMSCGROUPBYSnoWHERECOUNT(*)>3
现要利用Student表查询年龄最小的学生姓名和年龄。下列实现此功能的查询语句中,正确的是()。
正确答案是:SELECTTOP1Sname,SageFROMStudentORDERBYSage
设SC表中记录成绩的列为:Grade,类型为int。若在查询成绩时,希望将成绩按‘优’、‘良’、‘中’、‘及格’和‘不及格’形式显示,正确的Case表达式是()。
正确答案是:Case
WhenGradebetween90and100THEN’优’
WhenGradebetween80and89THEN’良’
WhenGradebetween70and79THEN’中’
WhenGradebetween60and69THEN’及格’
Else’不及格’
在SQL语句中,用于更新表数据的语句是()。
正确答案是:SELECT
设有Teachers表,该表的定义如下:
正确答案是:AgeTINYINTCHECK(AgeBETWEEN25AND65))
插入语句中,不能正确执行的是()。
正确答案是:INSERTINTOTeachersVALUES(‘T100′,’张宏’)
设数据库中已有表5-1至5-3所示的Student、Course和SC表。现要查询学生选的第2学期开设课程的情况,只需列出学号、姓名、所在系和所选的课程号。该查询涉及到的表是()。
正确答案是:Student、SC和Course表
删除计算机系学生(在student表中)的修课记录(在SC表中)的语句,正确的是()。
正确答案是:DELETEFROMSCFROMSCJOINStudentbONSC.Sno=b.SnoWHERESdept=’计算机系’
查询年龄最大的前5位学生的姓名和年龄的语句,正确的是()。
正确答案是:SELECTTOP5WITHTIES姓名,年龄FROM学生表
二.判断题(每题1分,共5分)
“SELECT*FROMStudentWHERESnameLIKE’张_’”语句中的’张_’用于查找姓张的学生。()
正确答案是:错
“SELECT*FROMStudentWHERESnameLIKE'[张李刘]%’”语句可以查找姓张、李、刘的学生。()
正确答案是:对
“SELECTCOUNT(DISTINCTSno)FROMSC”语句用于统计学生的总人数。()
正确答案是:错
HAVING子句用于对分组后的统计结果再进行过滤,它用于组而不是对单个记录。()
正确答案是:对
“SELECT*FROMStudentINNERJOINSC
ONStudent.Sno=SC.Sno”语句可将Student与SC连接起来。()
正确答案是:对
三.简答题(本题共5分)
WHEREAgeBETWEEN20AND30子句,查找的Age范围是多少?(本题1分)
正确答案是: Age大于等于20并且小于等于30
“WHERESdeptNOTIN(‘CS’,’IS’,’MA’)”子句,查找的数据是什么?(本题1分)
正确答案是:查找CS, “TS’, MA’三个系之外的其他系
自连接与普通内连接的主要区别是什么?(本题1分)
正确答案是::自连接中进行连接操作的表在物理上是一张表,而普通内连接进行连接的表在物理上是两张表。
外连接与内连接的主要区别是什么?(本题1分)
正确答案是:进行外连接操作时,其连接结果中将包含一张表中的所有数据,不管该数据是否满足连接条件;而进行内连接操作时,其连接结果必须是两个表中都满足连接条件的数据。
相关子查询与嵌套子查询在执行方面的主要区别是什么?(本题1分)
正确答案是:相关子查询的执行过程是先外后内,而嵌套子查询的执行过程是先内后外。而且相关子查询中必须有外层查询的关联,而嵌套子查询中,内、外层查询不需要有关联关系。
评论0