《MySQL数据库开发》期末复习题1
更新时间:2024-07-05 21:07:01 阅读量: 综合文库 文档下载
《MySQL数据库开发》期末复习题
考试题型
一、单选题(每小题 2 分,共 40分)
二、判断题(每小题1分,打”√”或”×”,共10分) 三、 问答题(共15分,每小题5分) 四、综合题 (共35分,每小题5分)
一、填空
1、用来表示数据库中行之间的关系的机制称为______外键_约束。
2、_____字符集___是一套符号与编码,它包括编码规则以定义字符如何被编码为数字。 3、MySQL程序选项有两种通用形式:_______长选项__ 和 __短选项_________。
4、MySQL数据类型分为四大主要类别:______数值___、__字符______、__二进制_______、_____时间____。
5、_____存储程序_____是保存在服务器里的一组SQL语句的集合。 6、_____锁_是一种用来防止多个客户端时访问数据而产生问题的机制。
7、_____事务_是将一个数据处理执行步骤的集合作为一个单一单元来处理。 8、______innoDB____引擎是目前唯一可提供外键实现支持的引擎。 9、CREATE ___temporary__________ TABLE创建临时表。
10、_______union_关键字能够将两个或多个SELECT语句的结果连接起来。
选择题主要在认证复习题中。
二、选择(单选)
每小题 2 分,共 40分
1、哪个连接语句的格式是错误的(D ) (A)mysql - - host=myhost.example.com (B)mysql –h myhost.example.com (C)mysql –hmyhost.example.com (D)mysql –H myhost.example.com 2、查看MySQL版本语句是(A ) (A)mysql - - version (B)mysql - - VERSION (C)mysql - - help (D)mysql - - v 3、设置语句结束符的命令是(C )
(A)set (B)end (C)delimiter 4、设置MySQL提示符的命令是( B)
(A)tip
(B)prompt
5、导入sql脚本文件的命令是(A ) (A)source (B)script (C)file
(D)finish
(D)message
(C)popup
(D)sql
6、关于SELECT语句以下哪一个描述是错误的(C ) (A)SELECT语句用于查询一个表或多个表的数据。
(B)SELECT语句属于数据操作语言(DML)。
(C)SELECT语句的列必需是基于表的列的。
(D)SELECT语句表示数据库中一组特定的数据记录。 7、ENUM类型的字段level定义为(LOW、MIDDLE、HIGH),ORDER BY level asc的顺序是( B)
(A)HIGH、LOW、MIDDLE
(B)LOW、MIDDLE、HIGH
(C)MIDDLE、LOW、HIGH (D)HIGH、MIDDLE、LOW 8、SELECT * FROM city limit 5,10描述正确的是(C ) (A)获取第6条到第10条记录。 (B)获取第5条到第10条记录。
(C)获取第6条到第15条记录。 (D)获取第5条到第15条记录。 9、GROUP_CONCAT()函数作用是(A ) (A)将每组的结果字符串连接起来 (B)将每组的结果累加 (C)统计每组的记录数 (D)统计每组的平均值 10、GROUP子句带WITH ROLLUP的作用是(D )
(A)将每组的结果累加
(B)统计每组的平均值
(C)统计每组的记录数 (D)产生多个级别的统计值 11、查看全局SQL模式的命令是( C)
(A)select @@sql_mode (C)select @@global.sql_mode
(B)select @@session.sql_mode (D)select global.sql_mode
12、关于在非严格模式下处理无效值,哪个是错误的( D) (A)基于列定义的限制隐含值来执行类型转化。
(B)在可能的情况下调整无效的输入值为合法值,并产生警告信息。 (C)转换超出范围的值为范围内的值。
(D)拒绝无效值,产生错误。
13、关于在严格模式下处理无效值,哪个是错误的( A) (A)允许超出范围的值
(B)拒绝超出范围的值。
(C)拒绝不正确数据类型的值。 (D)拒绝没有缺省值的非空列。
14、VARCHAR类型字段保存最大的字符数是( C) (A)255 (B) 1025 (C)65533 (D)65535 15、查看系统中可用的字符集命令是(A ) (A)show character set (B)show collation
(C)show character (D)show set
16、关于DATETIME与TIMESTAMP两种数据类型的描述,错误的是( B)
(A)两者值的范围不一样。 (B)两者值的范围一样。 (C)两者占用空间不一样。
(D)TIMESTAMP可以自动记录当前日期时间。
17、在非严格模式下保存250到TINYINT类型字段时实际保存值是( C) (A)250 (B)0 (C)127 (D)128 18、SELECT GREATEST(‘ab’,’cd’,’ef’,’gh’)结果是(D ) (A)ab (B)cd (C)ef (D)gh 19、SELECT LEAST(‘ab’,’cd’,’ef’,’gh’)结果是( A) (A)ab (B)cd (C)ef (D)gh
20、SELECT FLOOR(-14.7), FLOOR(14.7)的结果是( A) (A)-15,14 (B)-15,15 (C)-14,14 (D)-14,15 21、SELECT CEILING(-14.7), CEILING(14.7)的结果是( D) (A)-15,14 (B)-15,15 (C)-14,14 (D)-14,15 22、SELECT LOCATE(‘to’, ‘Welcome to China’)的结果是( C) (A)7 (B)8 (C)9 (D)10 23、SELECT SUBSTRING(‘Welcome to China’, 9, 2)的结果是(B ) (A)Welcome (B)to (C)China (D)Welcome to 24、SELECT SUBSTRING_INDEX(‘Welcome to China’, ‘to’, -1)的结果是(C) (A)Welcome (B)to (C) China (D)Welcome to 25、SELECT CONCAT_WS(‘/’, ‘A’, NULL, ‘B’, NULL)的结果是( C) (A)AB (B)NULL 26、删除列指令是(D )
(C) A/B
(D)A//B/
(A)ALTER TABLE … DELETE … (B)ALTER TABLE … DELETE COLUMN… (C)ALTER TABLE … DROP … (D)ALTER TABLE … DROP COLUMN…
27、修改列指令是( A) (A)ALTER TABLE … MODIFY … (B)ALTER TABLE … MODIFY COLUMN…
(C)ALTER TABLE … UPDATE … (D)ALTER TABLE … UPDATE COLUMN… 28、以下哪一种指令无法增加记录( D) (A)INSERT INTO … VALUES … (B)INSERT INTO … SELECT… (C)INSERT INTO … SET … (D)INSERT INTO … UPDATE… 29、对于REPLACE语句描述错误的是(C )
(A)REPLACE语句返回一个数字以表示受影响的行,包含删除行和插入行的总和。 (B)通过返回值可以判断是否增加了新行还是替换了原有行。 (C)因主键重复插入失败时直接更新原有行。
(D)因主键重复插入失败时先删除原有行再插入新行。
30、关于DELETE和TRUNCATE TABLE区别描述错误的是( B) (A)DELETE可以删除特定范围的数据。 (B)两者执行效率一样。 (C)DELETE返回被删除的记录行数。 (D)TRUNCATE TABLE返回值为0。 31、查看是否启用自动提交的指令是( B)
(A)SELECT @@auto (C)SELECT @@commit
(B)SELECT @@autocommit (D)SELECT @@auto_commit
(B)SELECT @@transaction (D)SELECT @@isolatioin_level
32、查看当前隔离级别的指令是( A)
(A)SELECT @@tx_isolation (C)SELECT @@isolation
三、多选题
1、 MySQL数据库产品包括( ABCD)
(A)MySQL企业服务器 (B)MySQL社区服务器 (C)MySQL嵌入数据库 (D)MySQL集群 2、MySQL安装包括哪些主要部件(ABD ) (A)MySQL服务器 (B)MySQL客户端程序 (C)PL/SQL (D)MySQL非客户端工具 3、MySQL为哪些内容分配内存(ABCD ) (A)线程句柄 (B)MEMORY存储引擎创建的表 (C)客户端缓冲区 (D)全局缓冲区与高速缓存 4、与MySQL服务器相互作用的通讯协议包括( ABCD) (A)TCP/IP (B)Socket (C)共享内存 (D)命名管道 5、SQL模式值TRADITIONAL是一个复合模式,包含哪些值(ABCD ) (A)STRICT_TRANS_TABLES (B)STRICT_ALL_TABLES
(C)NO_ZERO_DATE
6、导致输入值无效原因是(ABCD ) (A)对于数据或时间列,值可能超出范围。
(B)对于字符串列,字符串可能太长。 (C)对于非NULL列赋予NULL值。
(D)对于ENUM列赋予非合法的枚举值。
(D)NO_ZERO_IN_DATE
7、当选择一个数值数据类型时,应该考虑的因素(ABC ) (A)数据类型数值的范围。
(B)列值所需要的存储空间数量
(C)列的精度与标度(适用于浮点与定点数) (D)设计者的习惯
8、数据库对象包括(ABCD ) (A)表 (B)视图 (C)存储过程 (D)触发器 9、使用键的好处是( ABC) (A)降低查找时间
(B)强化每行的唯一标识
(C)主键不能包含NULL (D)降低磁盘占用空间 10、MySQL存储引擎类型有哪些( ABCD)
(A)MyISAM
(B)InnoDB
(C)MEMORY
(D)MERGE
11、设置表的默认字符集关键字是( CD)
(A)DEFAULT CHARACTER (B)DEFAULT SET
(C)DEFAULT CHARSET (D)DEFAULT CHARACTER SET 12、关于临时表的描述正确的是(ABCD )
(A)只在创建的会话可见,其它会话不能访问另一个会话创建的临时表。 (B)临时表只存在于会话生命周期中。
(C)临时表可以与非临时表有相同的名称。 (D)临时表不能使用SHOW TABLES显示。 13、改变表名的指令是( AB)
(A)ALTER TABLE t1 rename to t2; (B)RENAME t1 to t2;
(C)UPDATE NAME t1 to t2; (D)CHANGE NAME t1 to t2;
14、外键定义中ON DELETE与ON UPDATE有几种设置( ABCD) (A)CASCADE (B)NO ACTION (C)RESTRICT 15、关于TRUNCATE TABLE描述正确的是( ABC) (A)TRUNCATE TABLE返回值为0。
(D)SET NULL
(B)表中包含AUTO_INCREMENT列,使用TRUNCATE TABLE可以重置序列值。 (C)TRUNCATE TABLE本身不能回滚。
(D)TRUNCATE TABLE删除表,然后根据表结构重新构建表。
(C)隔离性
(D)持久性
16、事务具有哪些特性(ABCD ) (A)原子性 (B)一致性
17、哪些语句会导致隐式提交( ABCD) (A)数据定义语句(ALTER、CREATE、DROP)
(B)数据访问和用户管理(GRANT、REVOKE)
(C)锁语句(LOCK TABLES、UNLOCK TABLES) (D)部分数据操作语句(TRUNCATE TABLE)
18、在并行的事务之间可能存在哪些现象(BCD ) (A)隔离 (B)脏读 (C)不可重复读 19、MySQL数据库存在哪些隔离级别(ABCD ) (A)读未提交 (B)读已提交 (C)可重复读 20、存储程序的优点( BCD) (A)逻辑只与MYSQL有关,与客户端语言无关
(B)安全:最少的数据访问、单一位置的处理
(D)幻像读 (D)可串行化
(C)性能:通过交互减少提高性能 (D)函数库:可利用数据库服务器函数库 21、存储程序的问题(ABCD ) (A)增加服务器负担
(B)开发工具有限
(C)有限的语言函数与速度 (D)有限的调试/配置能力
22、存储程序中选择语句有哪些(AB ) (A)IF (B)CASE (C)SELECT 23、存储程序中循环语句有哪些(ABC )
(A)REPEAT (A)HANDLE
(B)WHILE (C)LOOP (D)FOR (B)CASE
(C)CONTINUE (D)EXIT
24、存储程序中处理器有哪几种类型( CD)
(D)SWITCH
四、简答题
1、分别写出启动、连接、停止和卸载MySql服务(服务名为MySql)的语句? 启动:net start mysql
链接:mysql-u root –proot 停止:net stop mysql
卸载:mysqld-remove mysql
2、将下列预处理程序补充完整?
mysql>____prepare___________abc from 'select * from city where countrycode=?';
mysql > _________set____________ @code='CHN'; mysql > execute abc ____uning_______ @code;
3、请简述数据库语句执行过程,从预处理程序角度进行说明。 数据库语句执行过程:
(1)编译、判断程序语法(关键字),语义(表名、列名等数据库的对象)是否正确 (2)生成执行计划:将编译后的语句执行,考虑性能问题(往往是数据库管理系统自身完全)
(3)获取语句相关的数据****基于性能考虑,数据库会提前进行编译工作称为预编译,这样就可以节约执行时间
4、请简述警告的级别,以及查看警告的命令(至少写两个)
A.(1)Error:错误消息显示了一个严重的问题,并组织服务器完成该请求。 (2)warning:警告消息显示了服务器可以继续处理该请求的问题。 (3)note:提示消息只是一个信息。 B.(1)show warnings; (2)show errors;
(3)show notes;
5、将下列存储过程补充完整?
mysql > _____________delimiter________
mysql > CREATE PROCEDURE pro07(score INT) ->
-> BEGIN
-> ___declare________ var1 VARCHAR(32) default 'XX' ; -> IF (score>79) THEN SET var1='优秀'; -> ELSEIF (score>69) THEN SET var1='良'; -> ELSEIF (score>59) THEN SET var1='及格'; -> ELSE SET var1='不及格'; -> END IF;
-> SELECT var1 ;
-> _____end__ -> //
mysql > DELIMITER ; 6、请说明视图的的注意事项 创建视图,只能产生一个结果集
(1) 运行创建视图的语句需要用户具有创建视图(CRATE VIEW)的权限,若加了[OR REPLACE]时,还需要用户具有删除视图(DROP VIEW)的权限; (2) SELECT语句不能包含FROM子句中的子查询;
(3) SELECT语句不能引用系统或用户变量; (4) SELECT语句不能引用预处理语句参数;
(5) 在存储子程序内,定义不能引用子程序参数或局部变量;
(6) 在定义中引用的表或视图必须存在。但是,创建了视图后,能够舍弃定义引用的表或视图。要想检查视图定义是否存在这类问题,可使用CHECK TABLE语句; (7) 在定义中不能引用TEMPORARY表,不能创建TEMPORARY视图;
(8) 在视图定义中命名的表必须已存在;
(9) 不能将触发程序与视图关联在一起;
(10) 在视图定义中允许使用ORDER BY,但是,如果从特定视图进行了选择,而该视图使用了具有自己ORDER BY的语句,它将被忽略。
7、MySQL处理列缺失值或遗漏值的规则。
答:有定义default子句,值插入该子句指定的值;没有指定default子句时,在非严格模式下插入列数据类型的隐含缺省值,在严格模式下产生错误。
8、请说明ENUM类型和SET类型的区别。
ENUM类型
ENUM类型是一个枚举数据类型。当定义一个列为ENUM类型时,将提供给该列所
有可用的一系列值,最多可达65535个不同的值。当插入或修改一个ENUM列时,从所有可用的值中选择一个值。如果列值不在预先定义的列表里,该值将被删除并使用一个空字串。
ENUM数据类型将确保只有有效的continent列值才能被插入
ENUM数据类型所指定的值的顺序是很重要的。在内部,ENUM值由一个整数表示,该整数值被识别为实际的字符串值。这将有益于ENUM列的排序与比较,因为它是通过内部的整数值而不是字符串的值来操作。
SET类型
像ENUM数据类型一样,当定义一个列为set类型时,也必须提供一系列值。不像ENUM,set类型可以从给定的列表中选择多个值组合为一个有效的值。而该set值的字符串使用逗号分开列表里的字符串,模仿数学里的数据集合的概念。
ENUM类型
? 枚举数据类型
? 内部有一个整数表示
? ENUM (‘value1’, ?., ‘valuen’) SET类型
? 集合类型
? 从给定的列表中选择多个组合为一个有效的值 ? SET (‘value1’, ?., ‘valuen’)
答:ENUM和SET都是比较特殊的字符串数据列类型,它们的取值范围是一个预先定义好的列表。ENUM或SET数据列的取值只能从这个列表中进行选择。ENUM和SET的主要区别是: ENUM只能取单值,它的数据列表是一个枚举集合。它的合法取值列表最多允许有65535个成员。例如:ENUM(\表示,该数据列的取值要么是\,要么就是\。
SET可取多值。它的合法取值列表最多允许有64个成员。空字符串也是一个合法的SET值。 ENUM和SET的值是以字符串形式出现的,但在内部,MySQL以数值的形式存储它们。 ENUM的合法取值列表中的字符串被按声明定义的顺序被编号,从1开始。
SET的编号不是按顺序进行编号的,SET中每一个合法取值都对应着SET值里的一个位。第一个合法取值对应0位,第二个合法取值对应1位,以此类推,如果数值形式的SET值等于0,则说明它是一个空字符串,如果某个合法的取值出现在SET数据列里,与之对应的位就会被置位;如果某个合法的取值没有出现在SET数据列里,与之对应的位就会被清零。正因为SET值与位有这样的对应关系,所以SET数据列的多个合法取值才能同时出现并构成SET值。
9、请说明truncate table和delete from的区别。
? DELETE from
? 通过where指定删除范围 ? 执行效率低
? 返回被删除的记录 数 ? 面向事务
? TRUNCATE table
? ? ? ?
答:TRUNCATE TABLE 和不带 WHERE 的 DELETE 功能是一样的,都是删除表中的所有数据,不过 TRUNCATE TABLE 速度更快,占用的日志更少,这是因为 TRUNCATE TABLE 直接释放数据页并且在事务日志中也只记录数据页的释放,而 DELETE 是一行一行地删除,在事务日志中要记录每一条记录的删除。那么可不可以用 TRUNCATE TABLE 代替不带 WHERE 的 DELETE 呢?在以下情况是不行的:
1、要保留标识的情况下不能用 TRUNCATE TABLE,因为 TRUNCATE TABLE 会重置标识。
2、需要使用触发器的情况下不能使用 TRUNCATE TABLE ,它不会激发触发器。 3、对于由 FOREIGN KEY 约束引用的表(即主键所在的表,不是外键所在的表)不能使用 TRUNCATE TABLE。
只能删除全部数据
执行效率高 返回值为0 没有事务
4、对于参与了索引视图的表不能使用 TRUNCATE TABLE ,注意指索引视图,并非普通视图。
10、请说明mysql数据库中标识符大小写敏感规则?
答:(1)数据库、表的标识符依赖于操作系统的文件系统以及系统变量lower_case_table_names的设置
(2) 列、索引和存储过程标识符大小写不敏感 (3) 列别名也不敏感
(4) 触发器的大小写敏感规则同表和数据库(但不受lower_case_table_names影
响)
11、存储过程和存储函数有什么区别?(5分)
答:存储过程是一系列保存在数据库里的指令,过程将按照指令执行但不会返回任何值,该过程由call语句调用,并且只能使用输出变量来传递返回值。
存储函数是一系列保存在数据库里的指令,并且返回一个值。就像其他任何函数一样,函数可在语句中被调用,并返回一个值。
12、排序顺序一般服从什么规则,可以从数字,字母,汉字等角度进行说明。 答:排序顺序一般服从以下规则:
1.数字<字母<汉字
2.数字0-9,从小到大,15>9如果数字变为字符型那就不一定按照数字大小规律‘15’<’2’ 3.字母:A
五、编程题
学生成绩数据库(库名stuDB)下有三张表,表结构如下。 XS表(学生情况表):
学号 char(6) 不允许为空 主键
姓名 char(8) 不允许为空 专业名 char(10) 允许为空 性别 int(1) 男 1,女0
出生日期 date 系统默认 不允许为空 总学分 tinyint(1) 允许为空 照片 blob KC表(课程表):
课程号 char(3) 不允许为空 主键 课程名 char(16) 不允许为空
开课学期 tinyint(1) 不允许为空 只能为1—8 学时 tinyint(1) 不允许为空
正在阅读:
《MySQL数据库开发》期末复习题107-05
城市人行天桥与地下通道方案设计及比选08-30
黄田水电站机组甩负荷试验09-14
云计算导论大作业 - 图文10-20
软件测试岗前就业培训资料12-25
2022公司双拥工作计划范文04-13
2013-2-5化学药物(原料药和制剂)稳定性研究技术指导原则(20130205上网征求意见稿)01-26
PIC单片机 C编程技巧06-08
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 复习题
- 期末
- 数据库
- 开发
- MySQL
- 大豆蛋白饲料生产项目可行性研究报告 - 图文
- 椒江区第二十二届中小学生科技文化艺术节单项获奖名单
- Spring--quartz中cronExpression配置说明
- 高一化学方程式计算专题
- 2014新北师大版四年级数学上册知识点总结
- 物流部各岗位职责
- 2014年南京外国语学校小升初数学真题
- 成卫发26号-2012版公共卫生服务项目 - 图文
- 聚苯颗粒外墙保温工程监理细则 - secret
- 农作物项目可行性研究报告
- 呼和浩特铁路局(相关货运)劳动安全控制措施14.7
- 河南重点项目-商丘化纤纺织项目可行性研究报告
- 21号门童服务礼仪规范
- 高二历史上学期期末教学质量检测试题(含解析)
- 泰州二附中八年级下英语月考试卷含答案 - 图文
- 闻法方式第五课
- 精馏
- 编辑部邮箱大全
- 第一册文言知识梳理 - 图文
- 2017-2018学年江苏省宿迁中学高一上学期期末模拟数学试题1