一. 单选题(共8题,40分)
1. (单选题)在Mysql中,创建唯一索引的关键字是()。
- A. fulltest index
- B. index
- C. only index
- D. unique index
我的答案: D:unique index;正确答案: D:unique index;
5分
2. (单选题)
MySQL中存储过程的建立以关键字( )开始,后面仅跟存储过程的名称和参数。
- A. CREATE PROCEDURE
- B. CREATE FUNCTION
- C. CREATE VIEW
- D. CREATE TRIGGER
我的答案: A:CREATE PROCEDURE ;正确答案: A:CREATE PROCEDURE ;
5分
3. (单选题)对于5叉BTree,每个非叶子节点由n个key与n+1个指针组成,其中n的取值范围为:
- A. 3<=n<=4
- B. 3<=n
- C. 3<=n<=5
- D. 2<=n<=4
我的答案: D:2<=n<=4;正确答案: D:2<=n<=4;
5分
答案解析:
一颗m叉的BTree,每个非叶子节点由n个key与n+1个指针组成,其中[ceil(m/2)-1] <= n <= m-1
4. (单选题)
光标的一般使用步骤,以下正确的是( )。
- A. 声明光标 打开光标 选择光标 关闭光标
- B. 声明光标 使用光标 打开光标 关闭光标
- C. 打开光标 声明光标 使用光标 关闭光标
- D. 声明光标 打开光标 使用光标 关闭光标
我的答案: D:声明光标 打开光标 使用光标 关闭光标;正确答案: D:声明光标 打开光标 使用光标 关闭光标;
5分
5. (单选题)5.1版本以后( )存储引擎是Mysql的默认存储引擎。
- A. MyISAM
- B. MEMORY
- C. MERGE
- D. InnDB
我的答案: D:InnDB;正确答案: D:InnDB;
5分
6. (单选题)索引可以提高()操作效率。
- A. insert
- B. delete
- C. update
- D. select
我的答案: D:select;正确答案: D:select;
5分
7. (单选题)唯一索引的作用是()。
- A. 保证各行在该索引列上的值都不为NULL
- B. 保证参加唯一索引的各列不能再参加其他索引
- C. 保证唯一索引不能被删除
- D. 保证各行在该索引列上的值都不能重复
我的答案: D:保证各行在该索引列上的值都不能重复;正确答案: D:保证各行在该索引列上的值都不能重复;
5分
答案解析:
索引列的值必须唯一,但允许有空值
8. (单选题)MyISAM、InnoDB、Memory三种存储引擎都支持的索引为:()
- A. Full-text
- B. BTREE索引
- C. HASH 索引
- D. R-tree 索引
我的答案: B:BTREE索引;正确答案: B:BTREE索引;
5分
二. 多选题(共2题,10分)
9. (多选题)B+Tree为BTree的变种,B+Tree与BTree的区别为:
- A. 所有的非叶子节点都可以看作是key的索引部分
- B. B+Tree只有叶子节点保存key信息,查询任何key都要从root走到叶子。所以B+Tree的查询效率更加稳定。
- C. n叉B+Tree最多含有n个key,而BTree最多含有n-1个key
- D. B+Tree的叶子节点保存所有的key信息,依key大小顺序排列。
我的答案: ABCD:所有的非叶子节点都可以看作是key的索引部分; B+Tree只有叶子节点保存key信息,查询任何key都要从root走到叶子。所以B+Tree的查询效率更加稳定。; n叉B+Tree最多含有n个key,而BTree最多含有n-1个key; B+Tree的叶子节点保存所有的key信息,依key大小顺序排列。 ;正确答案: ABCD:所有的非叶子节点都可以看作是key的索引部分; B+Tree只有叶子节点保存key信息,查询任何key都要从root走到叶子。所以B+Tree的查询效率更加稳定。; n叉B+Tree最多含有n个key,而BTree最多含有n-1个key; B+Tree的叶子节点保存所有的key信息,依key大小顺序排列。 ;
5分
10. (多选题)索引的类型包括:()
- A. 普通索引
- B. 全文索引
- C. 主键索引
- D. 唯一索引
- E. 复合索引
我的答案: ABCDE:普通索引; 全文索引; 主键索引; 唯一索引; 复合索引;正确答案: ABCDE:普通索引; 全文索引; 主键索引; 唯一索引; 复合索引;
5分
三. 填空题(共4题,20分)
11. (填空题)linux中停止mysql服务器的命令是:_____________。(注意命令的各个单词之间用一个半角空格分割)
我的答案:
5分
(1) service mysql stop
正确答案:
(1) service mysql stop
12. (填空题)linux中查看mysql服务器运行状态的命令是:_____________。(注意命令的各个单词之间用一个半角空格分割)
我的答案:
2.5分
(1) service mysql status
(2) service mysqlid status
正确答案:
(1) service mysql status
(2) service mysqld status
13. (填空题)linux中启动mysql服务器的命令是:_____________。(注意命令的各个单词之间用一个半角空格分割)
我的答案:
5分
(1) service mysql start
正确答案:
(1) service mysql start
14. (填空题)linux中重启mysql服务器的命令是:_____________。(注意命令的各个单词之间用一个半角空格分割)
我的答案:
0分
(1) service mysql
正确答案:
(1) service mysql restart
四. 判断题(共6题,30分)
15. (判断题)存储过程和函数的区别在于函数必须有返回值,而存储过程没有。
- A. 对
- B. 错
我的答案: 对正确答案: 对
5分
16. (判断题)视图(View)是一种虚拟存在的表。其行和列数据来自定义视图的查询中使用的表, 并且是在使用视图时动态生成的。
- A. 对
- B. 错
我的答案: 对正确答案: 对
5分
17. (判断题)MySql索引数据结构对经典的B+Tree进行了优化。在原B+Tree的基础上,增加一个指向相邻叶子节点的链表指 针,就形成了带有顺序指针的B+Tree,提高区间访问的性能。
- A. 对
- B. 错
我的答案: 对正确答案: 对
5分
18. (判断题)索引可以有效的提升查询数据的效率,因此索引数量多多益善。
- A. 对
- B. 错
我的答案: 错正确答案: 错
5分
答案解析:
索引可以有效的提升查询数据的效率,但索引数量不是多多益善,索引越多,维护索引的代价自然也就水涨 船高。对于插入、更新、删除等DML操作比较频繁的表来说,索引过多,会引入相当高的维护代价,降低 DML操作的效率,增加相应操作的时间消耗。另外索引过多的话,MySQL也会犯选择困难病,虽然最终仍然 会找到一个可用的索引,但无疑提高了选择的代价。
19. (判断题)MyISAM 不支持事务、也不支持外键,其优势是访问的速度快,对事务的完整性性没有要求。
- A. 对
- B. 错
我的答案: 对正确答案: 对
5分
20. (判断题)游标是用来存储查询结果集的数据类型 , 在存储过程和函数中可以使用光标对结果集进行循环的处理。
- A. 对
- B. 错
我的答案: 对正确答案: 对