SQL SERVER数据库习题
一、选择题
(一)、SQL语言部分
1、语句: Insert INTO Goods(Name,Storage,Price)
Values('Keybpoard',3000,90,000) 的作用是( )。
A、 添加数据到一行中的所有列 B、 添加数据到一行中的部分列
C、 插入默认值 D、 插入多个行
2、使用SELECT子句可以将从一个或多个表或视图中选择来的数据添加表中去,SELECT子句可以将数据添加到一行的部分或全部列中。被插入数据的表与SELECT子句的结果集必须( )
A、 具有相同域 B、具有相同的数据类型 C、兼容 D、 具有完整连接
3、在SQL Server中,对数据的修改是通过( )语句实现的
A、 MODIFY B、 MESSAGE C、 REMARK D、 UPDATE
4、使用T-SQL中的( )语句可以删除数据库表格或者视图中的一个或多个记录
A、 CENTSOR B、 PRINT C、 DELETE D、 STRIKE
5、关于TRUNCATE TABLE和DELETE语句描述正确的是( )
A、 TRUNCATE TABLE TABLE语句不记录数据页的释放操作,只记录日志
B、 TRUNCATE TABLE TABLE语句比DELETE语句执行快
C、 用DELETE语句删除表要指定条件
D、 TRUNCATE TABLE TABLE语句并不释放表中数据索引所占据的全部空间
6、使用( )关键字可以将两个或更多基于不同表的查询结果合并为一个单独的结果集,可以将这样的结果集创建为一个视图,在用户看来就像一个单独的表一样
A、UNION B、ORDER C、LINK D、CONNECT
7、设有一个关系:DEPT (DNO,DNAME),如果要出倒数第三个字母为W,并且至少包含4个字母的DNAME,则查询条件子句应写成 WHERE DNAME LIKE( )
A、 '_ _ W _ %' B、 '_ %W_ _' C、 '_W_ _' D、 '_W_ %'
8、SQL语言中,删除一个表的命令是( )
A、DELETE B、DROP C、CLEAR D、REMORE
9、部分匹配查询中有关通配符“_”的正确的叙述是( )
A、“_”代表多个字符 B、“_”可以代表零个或多个字符
C、“_”不能与“%”一同使用 D、“_”代表一个字符
10、列值为空值(NULL),则说明这一列( )。
A、数值为0 B、数值为空格 C、数值是未知的 D、不存在
11、在下列SQL Server常量中,( )是非法常量。
A、‘数据库系统’ B、‘Ab3D%’ C、-12 D、‘a3b’d’
12、以下与数据库结构有关的命令是( )。
A、ALTER B、CHANGE C、SELECT D、MODIFY
13、tinyint数据类型的表示范围是( )。
A、-231至231-1之间 B、-215至215-1 C、0至1024之间 D、0至255之间
14、在下列SQL Server常量中,( )是非法常量。
A、‘网上人大’ B、‘D%123’ C、12、09 D、‘123’456’
15、( )表示整数类型并且存储长度为2个字节。
A、integer B、smallint C、tinyint D、bigint
16、在一个查询中,使用( )关键字能够除去重复行。
A、distinct B、top C、having D、desc
17、与运算符“>=”含义等同的运算是( )。
A、<= B、 !> C、!< D、<>
18、在建立一个数据库表时,如果规定某一列的缺省值为0,说明( )。
A、该列的数据不可更改 B、当插入记录时,必须指定该列的值为0
C、当插入记录时,如果没有指定该值,那么该列值为0
D、当插入记录时,无须显示指定该列的值
19、在查询语句的Where子句中,如果出现了“age Between 20 and 30”,这个表达式等同于( )。
A、age>=20 and age<=30 B、age>=20 or age<=30
C、age>20 and age<30 D、age>20 or age<30
20、( )不属于数据操纵语言(DML)。
A、insert语句 B、update语句 C、delete语句 D、grant语句
21、TRUNCATE TABLE命令可以删除________,但表的结构及其列、约束、索引等保持不变。
A) 当前记录 B) 所有记录 C) 指定记录 D) 有外键(FOREIGN KEY)约束引用的表
22、SELECT number=学号,name=姓名,mark=总学分 FROM XS WHERE 专业名=’计算机’表示_______
A) 查询XS表中计算机系学生的学号、姓名和总学分
B) 查询XS表中计算机系学生的number、name和mark
C) 查询XS表中学生的学号、姓名和总学分
D) 查询XS表中计算机系学生的记录
23、要查询XSH数据库CP表中产品名含有“冰箱”的产品情况,可用________命令。
A) SELECT * FROM CP WHERE 产品名称 LIKE ‘冰箱’
B) SELECT * FROM XSH WHERE 产品名称 LIKE ‘冰箱’
C) SELECT * FROM CP WHERE 产品名称 LIKE ‘%冰箱%’
D) SELECT * FROM CP WHERE 产品名称=‘冰箱’
24、要查询XS表中姓“王”且单名的学生情况,可用________命令
A) SELECT * FROM XS WHERE 姓名 LIKE ‘王%’
B) SELECT * FROM XS WHERE 姓名 LIKE ‘王_’
C) SELECT * FROM XS WHERE 姓名 = ‘王%’
D) SELECT * FROM XS WHERE 姓名 = ‘王_’
25、在____子查询中,内层查询只处理一次,得到一个结果集,再依次处理外层查询。
A) IN子查询 B) EXIST子查询 C) NOT EXIST子查询 D) JOIN子查询
26、连接有内连接、外连接和交叉连接,其中外连接只能对______表进行。
A) 两个 B) 三个 C) 四个 D) 任意个
27、命令SELECT 学号,AVG(成绩) AS ‘平均成绩’ FROM XS_KC GROUP BY 学号 HAVING AVG(成绩)>=85,表示_________。
A) 查XS_KC表中平均成绩在85分以上的学生的学号和平均成绩
B) 查平均成绩在85分以上的学生
C) 查XS_KC表中各科成绩在85分以上的学生
D) 查XS_KC表中各科成绩在85分以上的学生的学号和平均成绩
第(28)至(30)题是基于如下两个关系,其中雇员信息表关系EMP的主键是雇员号,部门信息表关系DEPT的主键是部门号
EMP | DEPT | ||||||
雇员号 | 雇员名 | 部门号 | 工资 | 部门号 | 部门名 | 地址 | |
001 010 056 101 | 张 山 王宏达 马林生 赵 敏 | 02 01 02 04 | 2000 1200 1000 1500 | 01 02 03 04 | 业务部 销售部 服务部 财务部 | 1号楼 2号楼 3号楼 4号楼 | |
28、若执行下面列出的操作,哪个操作不能成功执行?
A) 从EMP中删除行(‘010’,‘王宏达’,‘01’,1200)
B) 在EMP中插入行(‘102’,‘赵敏’,‘01’,1500)
C) 将truncatedeleteEMP中雇员号=‘056’的工资改为1600元
D) 将EMP中雇员号=‘101’的部门号改为‘05’
29、若执行下面列出的操作,哪个操作不能成功执行?
A) 从DEPT 中删除部门号=‘03’的行
B)在DEPT中插入行(‘06’,‘计划部’,‘6号楼’)
C) 将DEPT中部门号=‘02’的部门号改为‘10’
D) 将DEPT中部门号=‘01’的地址改为‘5号楼’
30、在雇员信息表关系EMP中,哪个属性是外键(foreign key)?
A) 雇员号 B) 雇员名 C) 部门号 D) 工资
31、列值为空值(NULL),则说明这一列( )。
A、数值为0 B、数值为空格 C、数值是未知的 D、不存在
第(32)至(34)题基于“学生—选课—课程”数据库中的三个关系:
S(S#,SNAME,SEX,AGE),SC(S#,C#,GRADE),C(C#,CNAME,TEACHER)
32、若要求查选修“数据库技术”这门课程的学生姓名和成绩,将使用关系
A) S和SC B) SC和C C) S和C D) S、SC和C
33、若要求查姓名中第一个字为‘王’的学生号和姓名。下面列出的SQL语句中,哪个(些)是正确的?
Ⅰ、SELECT S#,SNAME FROM S WHERE SNAME=′王%′
Ⅱ、SELECT S#,SNAME FROM S WHERE SNAME LIKE′王%′
Ⅲ、SELECT S#,SNAME FROM S WHERE SNAME LIKE′王_′
A) Ⅰ B) Ⅱ C) Ⅲ D) 全部
34、查询选修了课程号为‘C2’的学生号和姓名,若用下列SQL的SELECT语句表达时,哪一个是错误的?
A) SELECT S、S#,SNAME FROM S WHERE S、S#=(SELECT SC、S# FROM SC WHERE C#='C2’)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论