二级MYSQL数据库程序设计-2
(总分:100.00,做题时间:90分钟)
一、选择题(总题数:40,分数:100.00)
1.对于日期"2013年10月21日",MySQL默认显示的格式是______。
(分数:2.50)
A."2013-10-21" √
B."2013-21-10"
C."10-21-2013"
D."21-10-2013"
解析:
2.部门表tb_dept的定义如下:
CREATE TABLE tb_dept(
deptno CHAR(2) primary key,
dname CHAR(20) Not null,
manager CHAR(12),
telephone CHAR(15)
);
下列说法中正确的是______。
(分数:2.50)
A.deptno的取值不允许为空,不允许重复√
B.dname的取值允许为空,不允许重复
C.deptno的取值允许为空,不允许重复
D.dname的取值不允许为空,不允许重复
解析:
3.修改表中数据的命令是______。
(分数:2.50)
A.UPDATE √
B.ALTER TABLE
C.REPAIR TABLE
D.CHECK TABLE
解析:
4.在使用INSERT语句插入数据时,正确的使用形式不包括______。
(分数:2.50)
A.INSERT…VALUES语句
B.INSERT…SELECT语句
C.INSERT…WHERE语句√
D.INSERT…SET语句
解析:
5.学生表student包含sname、sex、age三个属性列,其中age的默认值是20,执行SQL语句INSERT INTO student(sex,sname,age) VALUES("M","Lili",);的结果是______。
(分数:2.50)
A.执行成功,sname,sex,age的值分别是Lili,M,20 √
B.执行成功,sname,sex,age的值分别是M,Lili,NULL
C.执行成功,sname,sex,age的值分别是M,Lili,20
D.SQL语句不正确,执行失败
解析:
6.设有客户表customers(id,name,tel),各字段的含义分别是客户编号、客户姓名和客户联系电话,其中id字段设置为AUTO_INCREMENT属性,且当前表中id字段最大值为22306。若此刻执行语句"INSERT INTO customers VALUES (22500,"李明",87556655);"之后,接着执行语句"INSERT INTO customers VALUES(0,"张良",87523012);",则此时该表中"张良"的客户编号是______。
(分数:2.50)
A.22501 √
B.22500
C.0
D.22308
解析:
7.删除数据表student的语句是______。
(分数:2.50)
A.DROP TABLE student;√
B.REMOVE TABLE student;
C.UPDATE TABLE student;
D.DELETE TABLE student;
解析:
8.设有学生表student(sno,sname,sage,smajor),各字段的含义分别是学生学号、姓名、年龄和专业。要求输入一学生记录,学号为100,姓名为张红,年龄为20。以下不能完成如上输入要求的语句是______。(分数:2.50)
A.INSERT INTO student VALUES(100,"张红",20);√
B.INSERT INTO student(sno,sname,sage,smajor) VALUES(100,"张红",20,NULL);
C.INSERT INTO student VALUES(100,"张红",20,NULL);
D.INSERTINTO student(sno,sname,sage) VALUES(100,"张红",20);
解析:
9.学生表student包含sname、sex、age三个属性列,其中age的默认值是20,执行SQL语句INSERT INTO student(sex,sname,age)VALUES("M","Lili",);的结果是______。
(分数:2.50)
A.执行成功,sname,sex,age的值分别是Lili,M,20 √
B.执行成功,sname,sex,age的值分别是M,Lili,NULL
C.执行成功,sname,sex,age的值分别是M,Lili,20
D.SQL语句不正确,执行失败
解析:
10.在使用INSERT INTO插入记录时,对于AUTO_INCREMENT列,若需要使其值自动增长,下面填充方式中错误的是______。
(分数:2.50)
A.填充NULL值
B.不显式地填充值
C.填充数字0
D.填充数字1 √
解析:
11.查询一个表中总记录数的SQL语句语法格式是______。
(分数:2.50)
A.SELECT COUNT( * )FROM tbl_name;√
B.SELECT COUNT FROM tbl_name;
C.SELECT FROM COUNT tbl_name;
D.SELECT * FROM tbl_name:
解析:
12.使用SQL语句查询学生信息表tbl_student中的所有数据,并按学生学号stu_id升序排列,正确的语句是______。
(分数:2.50)
A.SELECT * FROM tbl_student ORDER BY stu_id ASC; √
B.SELECT * FROM tbl_student ORDER BY stu_id DESC;
C.SELECT * FROM tbl_student stu_id ORDER BY ASC;
D.SELECT * FROM tbl_student stu_id ORDER BY DESC;
解析:
13.统计表中所有记录个数的聚集函数是______。
(分数:2.50)
A.COUNT √
B.SUM
C.MAX
D.AVG
解析:
14.要消除查询结果集中的重复值,可在SELECT语句中使用关键字______。
(分数:2.50)
A.UNION
B.DISTINCT √
C.LIMIT
D.REMOVE
解析:
15.在MySQL的SQL语句中,要实现类似分页功能的效果,可使用______。
(分数:2.50)
A.LIMIT √
B.ORDER BY
C.WHERE
D.TRUNCATE
解析:
16.在下列有关GROUP BY语句的描述中,不正确的是______。
(分数:2.50)
A.分组条件可以有多个,并且每一个可以分别指定排序方式
B.可以使用WHERE子句对所得的分组进行筛选√
C.GROUP BY可配合聚合函数一起使用,但GROUP BY子句中不能直接使用聚合函数
D.除了聚合函数,SELECT语句中的每个列都必须在GROUP BY子句中给出
解析:
17.对于SQL查询:SELECT * FROM tbl_name WHERE id = (SELECT id FROM tbl_name),假设该表中包含id字段,那么该语句正确执行的条件是______。
(分数:2.50)
A.该表中必须有多条记录
B.该表中必须只有一条记录
C.该表中记录数必须小于等于一条√
D.此SQL语句错误,无论如何都无法正确执行
解析:
18.设有学生表student,包含的属性有学号sno、学生姓名sname、性别sex、年龄age、所在专业smajor。下列语句正确的是______。
(分数:2.50)
A.SELECT sno, sname FROM student ORDER BY snameUnionSELECT SRO, sname FROM student WHERE smajor="CS";
B.SELECT sno, sname FROM student WHERE sex="M"UnionSELECT Sno, shame, sex FROM student WHERE smajor="CS";
C.SELECT sno, sname FROM student WHERE sex="M"ORDER BY snameUnionSELECT sno,sname FROM student WHERE Stupor="CS";
D.SELECT sno, sname FROM student WIlERE sex="M"UnionSELECT sno,sname FROM student WHERE smajor="CS";√
解析:
19.学生表student如下所示:
下面SQL
(分数:2.50)
A.SELECT COUNT( * ) FROM student;
B.SELECT COUNT(所在系编号) FROM student;
C.SELECT COUNT( * ) FROM student GROUP BY学号;
D.SELECT COUNT(总学分) FROM student;√
解析:
20.查找学生表student中姓名的第二个字为"t"的学生学号Sno和姓名sname,下面SQL语句正确的是
______。
(分数:2.50)
A.SELECT SRO,shame FROM student WHERE sname="_t%";
B.SELECT Sno,sname FROM student WHERE shame LIKE "_t%";√
C.SELECT sno,shame FROM student WHERE sname="%t_";
D.SELECT sno,shame FROM student WHERE sname LIKE "%t_";
解析:
21.订单表tb_order包含用户信息uid和产品信息pid等属性列,以下语句能够返回至少被订购过三次的pid是______。
(分数:2.50)
A.SELECT pid FROM tb_order WHERE count(pid) >3;
B.SELECT pid FROM tb_order WHERE max(pid) > =3;
C.SELECT pid FROM tb_order GROUP BY pid HAVING COUNT(pid) >3;
D.SELECT pid FROM tb_order GROUP BY pid HAVING COUNT(pid) > =3;√
解析:
22.设有学生表student(sno,sname,sage,smajor),要从student表中检索sname字段值第2个字是"红"的所有学生信息。以下能够按照上述条件进行检索的WHERE表达式是______。
(分数:2.50)
A.sname LIKE "_红%" √
B.sname LIKE "_红_"
C.sname LIKE "%红%"
D.sname LIKE "%红_"
解析:
23.设有成绩表,包含学号、分数等字段。现有查询要求:查询有3门以上课程的成绩在90分以上的学生学号及90分以上课程数。以下SQL语句中正确的是______。
(分数:2.50)
A.SELECT学号,COUNT( * ) FROM成绩WHERE分数>90 GROUP BY学号HAVING COUNT( * ) >3;√
B.SELECT学号,COUNT(学号) FROM成绩WHERE分数>90 AND COUNT(学号) >3;
C.SELECT学号,COUNT( * ) FROM成绩GROUP BY学号HAVING COUNT( * ) >3 AND分数>90;
D.SELECT学号,COUNT( * ) FROM成绩WHERE分数>90 AND COUNT( * ) >3 GROUP BY学号;
解析:
24.设有学生表Student(学号,姓名,系名,课程号,成绩),查询至少选修了4门课程的学生学号及平均成绩的正确语句是______。
(分数:2.50)
A.SELECT学号,AVG(成绩) AS平均成绩FROM StudentGROUP BY学号HAVING COUNT(课程号)>3 √
B.SELECT学号,AVG(成绩) AS平均成绩FROM StudentGROUP BY课程号HAVING COUNT(课程号)>3
C.SELECT学号,AVG(成绩) AS平均成绩FROM StudentGROUP BY学号HAVING COUNT(课程号)>4
D.SELECT学号,AVG(成绩) AS平均成绩FROM StudentGROUP BY课程号HAVING COUNT(DISTINCT学号)>3
解析:
25.下列关于索引的叙述中,错误的是______。
(分数:2.50)
A.索引能够提高数据表读写速度√
B.索引能够提高查询效率
C.UNIQUE索引是唯一性索引
D.索引可以建立在单列上,也可以建立多列上
解析:
26.对于索引,正确的描述是______。
(分数:2.50)
A.索引的数据无需存储,仅保存在内存中
B.一个表上可以有多个聚集索引
C.索引通常可减少表扫描,从而提高检索的效率√
D.所有索引都是唯一性的索引
解析:
27.MySQL中,不能创建索引的语句是______。
(分数:2.50)
A.CREATE TABLE
B.ALTER TABLE
C.CREATE INDEX
D.SHOW INDEX √
解析:
28.下列不能用于删除索引的命令是______。
(分数:2.50)
A.ALTER INDEX √
B.ALTER TABLE
C.DROP INDEX
D.DROP TABLE
解析:
29.设有语句:
CREATE UNIQUE INDEX idx ON books(id) DESC;
以下关于该语句的叙述中,错误的是______。
(分数:2.50)
A.idx是要建立索引的数据表名√
B.所创建的是唯一性索引
C.所创建的索引按照索引关键字降序排列
D.索引关键字是id
解析:
30.以下关于PRIMARY KEY和UNIQUE的描述中,错误的是______。
(分数:2.50)
A.UNIQUE约束只能定义在表的单个列上√
B.一个表上可以定义多个UNIQUE,只能定义一个PRIMARY KEY
C.在空值列上允许定义UNIQUE,不能定义PRIMARY KEY
D.PRIMARY KEY和UNIQUE都可以约束属性值的唯一性
解析:
31.执行语句"CREATE INDEX in_dept ON tb_dept(telephone(6),DESC)"后,在tb_dept表的telephone 属性上______。
(分数:2.50)
A.根据telephone属性前六个字符采用BTREE索引类型创建索引√
B.根据telephone属性前六个字符采用HASH索引类型创建索引
C.根据前六条记录采用BTREE索引类型创建索引
D.根据前六条记录采用HASH索引类型创建索引
解析:
32.在使用CREATE INDEX创建索引时,其默认的排序方式是______。
(分数:2.50)
A.升序√
B.降序
C.无序
D.聚簇
解析:
33.给定如下SQL,语句
CREATE VIEW test.V_test
AS
SELECT * FROM test.students
WHERE age < 19:
该语句的功能是______。
(分数:2.50)
A.在test表上建立一个名为V_test的视图
B.在students表上建立一个查询,存储在名为test的表中
C.在test数据库的students表上建立一个名为V_test的视图√
D.在test表上建立一个名为students的视图
解析:
34.下列关于MySQL基本表和视图的描述中,正确的是______。
(分数:2.50)
A.对基本表和视图的操作完全相同
B.只能对基本表进行查询操作,不能对视图进行查询操作
C.只能对基本表进行更新操作,不能对视图进行更新操作
D.能对基本表和视图进行更新操作,但对视图的更新操作是受限制的√
解析:
35.下列关于视图的叙述中,正确的是______。
(分数:2.50)
A.使用视图,能够屏蔽数据库的复杂性√
B.更新视图数据的方式与更新表中数据的方式相同
C.视图上可以建立索引
D.使用视图,能够提高数据更新的速度
解析:
36.下列有关视图的叙述中,正确的是______。
(分数:2.50)
A.视图可以嵌套√
B.视图可以创建索引
C.视图包含数据
D.视图不能与表一起使用
解析:
37.下列关于表和视图的叙述中错误的是______。
(分数:2.50)
A.视图可以和表一起使用
B.表和视图上都可以创建索引√
C.表和视图的数据都可以进行更新操作,但视图的更新受限
D.表和视图都可以使用SQL语句进行查询
解析:
38.在MySQL中创建视图时,WITH CHECK OPTION子句的作用是______。
(分数:2.50)
A.防止通过视图插入或更新行
B.使用户能从多种角度看待同一数据
C.对于可更新视图,保证更新、插入或删除的行要满足视图定义中的谓词条件√
D.去掉基本表的某些行和某些列
解析:
39.设有学生表student,包含的属性有学号sno、学生姓名sname、性别sex、年龄age、所在专业smajor。基于student表建立如下视图,其中可以进行数据更新的是______。
(分数:2.50)
A.CREATE VIEW V1ASSELECT sno,shame FROM student;√
B.CREATE VIEW V2(major)ASSELECT DISTINCT(smajor) FROM student;
C.CREATE VIEW V3(major,scount)ASSELECT smajor,COUNT( * ) FROM student GROUP BY smajor;
D.CREATE VIEW V4(sname,sage)ASSELECT sname,age+5 FROM student where sno="101";
解析:
40.设有商品库存表,规定表中的库存量值必须大于等于0。根据这个规定应建立______。
(分数:2.50)
A.用户定义完整性约束√
B.实体完整性约束
C.参照完整性约束
D.缺省值约束
解析: