《MySQL数据库开发》期末复习试题1.docx
- 文档编号:13543422
- 上传时间:2023-06-15
- 格式:DOCX
- 页数:22
- 大小:33.10KB
《MySQL数据库开发》期末复习试题1.docx
《《MySQL数据库开发》期末复习试题1.docx》由会员分享,可在线阅读,更多相关《《MySQL数据库开发》期末复习试题1.docx(22页珍藏版)》请在冰点文库上搜索。
《MySQL数据库开发》期末复习试题1
《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、(B)mysql–hmyhost、example、
(C)mysql–hmyhost、example、ﻩﻩ(D)mysql –H myhost、example、
2、查瞧MySQL版本语句就是(A )
ﻩ(A)mysql——versionﻩ(B)mysql — -VERSION
ﻩ(C)mysql—-helpﻩ(D)mysql —-v
3、设置语句结束符得命令就是(C)
ﻩ(A)setﻩ(B)end(C)delimiterﻩ(D)finish
4、设置MySQL提示符得命令就是(B)
ﻩ(A)tipﻩ(B)promptﻩ(C)popupﻩﻩ(D)message
5、导入sql脚本文件得命令就是(A )
ﻩ(A)source(B)scriptﻩ(C)fileﻩ(D)sql
6、关于SELECT语句以下哪一个描述就是错误得(C )
(A)SELECT语句用于查询一个表或多个表得数据.
(B)SELECT语句属于数据操作语言(DML)。
(C)SELECT语句得列必需就是基于表得列得。
(D)SELECT语句表示数据库中一组特定得数据记录。
7、ENUM类型得字段level定义为(LOW、MIDDLE、HIGH),ORDERBYlevel asc得顺序就是(B)
(A)HIGH、LOW、MIDDLEﻩﻩ(B)LOW、MIDDLE、HIGH
(C)MIDDLE、LOW、HIGHﻩ(D)HIGH、MIDDLE、LOW
8、SELECT *FROM citylimit 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子句带WITHROLLUP得作用就是(D)
(A)将每组得结果累加(B)统计每组得平均值
(C)统计每组得记录数(D)产生多个级别得统计值
11、查瞧全局SQL模式得命令就是( C)
ﻩ(A)selectsql_modeﻩ(B)selectsession、sql_mode
ﻩ(C)selectglobal、sql_mode(D)selectglobal、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)showcharacter setﻩ(B)showcollation
(C)showcharacterﻩ(D)showset
16、关于DATETIME与TIMESTAMP两种数据类型得描述,错误得就是( B)
(A)两者值得范围不一样。
(B)两者值得范围一样.
(C)两者占用空间不一样.
(D)TIMESTAMP可以自动记录当前日期时间.
17、在非严格模式下保存250到TINYINT类型字段时实际保存值就是(C)
ﻩ(A)250(B)0ﻩ(C)127(D)128
18、SELECTGREATEST(‘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、SELECTFLOOR(—14、7), FLOOR(14、7)得结果就是(A)
(A)—15,14ﻩ(B)-15,15ﻩ(C)-14,14(D)—14,15
21、SELECTCEILING(—14、7), CEILING(14、7)得结果就是(D)
ﻩ(A)-15,14(B)—15,15(C)-14,14(D)—14,15
22、SELECT LOCATE(‘to’,‘WeletoChina’)得结果就是(C)
(A)7(B)8ﻩ(C)9(D)10
23、SELECTSUBSTRING(‘Weleto China’, 9,2)得结果就是(B )
ﻩ(A)Weleﻩ(B)toﻩ(C)Chinaﻩ(D)Weleto
24、SELECTSUBSTRING_INDEX(‘WeletoChina’,‘to’,-1)得结果就是(C)
ﻩ(A)Weleﻩ(B)to(C)China(D)Weleto
25、SELECT CONCAT_WS(‘/’,‘A’,NULL,‘B',NULL)得结果就是( C)
(A)AB(B)NULLﻩﻩ(C)A/Bﻩ(D)A//B/
26、删除列指令就是(D)
(A)ALTER TABLE …DELETE…ﻩ(B)ALTERTABLE …DELETECOLUMN…
ﻩ(C)ALTERTABLE… DROP…ﻩ(D)ALTERTABLE…DROPCOLUMN…
27、修改列指令就是(A)
ﻩ(A)ALTERTABLE… MODIFY…(B)ALTERTABLE …MODIFYCOLUMN…
ﻩ(C)ALTER TABLE…UPDATE …ﻩ(D)ALTERTABLE …UPDATECOLUMN…
28、以下哪一种指令无法增加记录( D)
(A)INSERTINTO… VALUES…ﻩ(B)INSERT INTO…SELECT…
ﻩ(C)INSERT INTO…SET…ﻩﻩ(D)INSERTINTO… UPDATE…
29、对于REPLACE语句描述错误得就是(C)
ﻩ(A)REPLACE语句返回一个数字以表示受影响得行,包含删除行与插入行得总与。
(B)通过返回值可以判断就是否增加了新行还就是替换了原有行。
(C)因主键重复插入失败时直接更新原有行。
(D)因主键重复插入失败时先删除原有行再插入新行。
30、关于DELETE与TRUNCATETABLE区别描述错误得就是(B)
(A)DELETE可以删除特定范围得数据.
(B)两者执行效率一样.
(C)DELETE返回被删除得记录行数.
(D)TRUNCATE TABLE返回值为0。
31、查瞧就是否启用自动提交得指令就是(B)
(A)SELECTautoﻩﻩ(B)SELECT automitﻩ
(C)SELECTmitﻩ(D)SELECTauto_mit
32、查瞧当前隔离级别得指令就是(A)
(A)SELECTtx_isolationﻩ(B)SELECTtransactionﻩ
(C)SELECTisolation(D)SELECTisolatioin_level
三、多选题
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ﻩ(D)NO_ZERO_IN_DATE
6、导致输入值无效原因就是(ABCD)
(A)对于数据或时间列,值可能超出范围。
(B)对于字符串列,字符串可能太长。
(C)对于非NULL列赋予NULL值。
(D)对于ENUM列赋予非合法得枚举值。
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)DEFAULTCHARACTERﻩ(B)DEFAULTSET
ﻩ(C)DEFAULT CHARSET(D)DEFAULTCHARACTERSET
12、关于临时表得描述正确得就是(ABCD)
ﻩ(A)只在创建得会话可见,其它会话不能访问另一个会话创建得临时表.
ﻩ(B)临时表只存在于会话生命周期中。
ﻩ(C)临时表可以与非临时表有相同得名称。
(D)临时表不能使用SHOW TABLES显示。
13、改变表名得指令就是(AB)
(A)ALTERTABLEt1 renametot2;
(B)RENAMEt1 tot2;
ﻩ(C)UPDATENAMEt1 tot2;
(D)CHANGE NAMEt1to t2;
14、外键定义中ONDELETE与ONUPDATE有几种设置(ABCD)
ﻩ(A)CASCADE(B)NO ACTIONﻩﻩ(C)RESTRICTﻩﻩ(D)SETNULL
15、关于TRUNCATETABLE描述正确得就是(ABC)
ﻩ(A)TRUNCATETABLE返回值为0。
ﻩ(B)表中包含AUTO_INCREMENT列,使用TRUNCATETABLE可以重置序列值。
(C)TRUNCATE TABLE本身不能回滚。
(D)TRUNCATETABLE删除表,然后根据表结构重新构建表。
16、事务具有哪些特性(ABCD)
ﻩ(A)原子性ﻩﻩ(B)一致性ﻩ(C)隔离性ﻩ(D)持久性
17、哪些语句会导致隐式提交( ABCD)
(A)数据定义语句(ALTER、CREATE、DROP)
(B)数据访问与用户管理(GRANT、REVOKE)
(C)锁语句(LOCKTABLES、UNLOCKTABLES)
(D)部分数据操作语句(TRUNCATETABLE)
18、在并行得事务之间可能存在哪些现象(BCD)
(A)隔离ﻩ(B)脏读ﻩ(C)不可重复读(D)幻像读
19、MySQL数据库存在哪些隔离级别(ABCD )
ﻩ(A)读未提交ﻩ(B)读已提交ﻩ(C)可重复读ﻩﻩ(D)可串行化
20、存储程序得优点(BCD)
ﻩ(A)逻辑只与MYSQL有关,与客户端语言无关
(B)安全:
最少得数据访问、单一位置得处理
(C)性能:
通过交互减少提高性能
(D)函数库:
可利用数据库服务器函数库
21、存储程序得问题(ABCD)
(A)增加服务器负担
(B)开发工具有限
(C)有限得语言函数与速度
(D)有限得调试/配置能力
22、存储程序中选择语句有哪些(AB)
ﻩ(A)IF(B)CASE(C)SELECTﻩﻩ(D)SWITCH
23、存储程序中循环语句有哪些(ABC)
ﻩ(A)REPEATﻩ(B)WHILEﻩ(C)LOOP(D)FOR
24、存储程序中处理器有哪几种类型(CD)
ﻩ(A)HANDLE(B)CASEﻩ(C)CONTINUE(D)EXIT
四、简答题
1、分别写出启动、连接、停止与卸载MySql服务(服务名为MySql)得语句?
启动:
netstartmysql
链接:
mysql—u root –proot
停止:
netstop mysql
卸载:
mysqld—removemysql
2、将下列预处理程序补充完整?
mysql>____prepare___________abcfrom'select*fromcitywherecountrycode=?
’;
mysql 〉 _________set____________code='CHN’;
mysql 〉 executeabc____uning_______code;
3、请简述数据库语句执行过程,从预处理程序角度进行说明。
数据库语句执行过程:
(1)编译、判断程序语法(关键字),语义(表名、列名等数据库得对象)就是否正确
(2)生成执行计划:
将编译后得语句执行,考虑性能问题(往往就是数据库管理系统自身完全)
(3)获取语句相关得数据****基于性能考虑,数据库会提前进行编译工作称为预编译,这样就可以节约执行时间
4、请简述警告得级别,以及查瞧警告得命令(至少写两个)
A、
(1)Error:
错误消息显示了一个严重得问题,并组织服务器完成该请求。
(2)warning:
警告消息显示了服务器可以继续处理该请求得问题。
(3)note:
提示消息只就是一个信息。
B、
(1)showwarnings;
(2)show errors;
(3)shownotes;
5、将下列存储过程补充完整?
mysql > _____________delimiter________
mysql 〉 CREATE PROCEDUREpro07(score INT)
-〉
-> BEGIN
-〉 ___declare________var1VARCHAR(32)default’XX';
-〉 IF(score〉79) THEN SET var1='优秀';
-〉 ELSEIF(score>69)THENSET var1='良';
—〉 ELSEIF (score〉59) THENSET var1='及格';
—> ELSESETvar1=’不及格';
—> END IF;
—> SELECTvar1 ;
—〉 _____end__
-〉 //
mysql 〉 DELIMITER ;
6、请说明视图得得注意事项
创建视图,只能产生一个结果集
(1) 运行创建视图得语句需要用户具有创建视图(CRATE VIEW)得权限,若加了[ORREPLACE]时,还需要用户具有删除视图(DROPVIEW)得权限;
(2)SELECT语句不能包含FROM子句中得子查询;
(3)SELECT语句不能引用系统或用户变量;
(4)SELECT语句不能引用预处理语句参数;
(5)在存储子程序内,定义不能引用子程序参数或局部变量;
(6)在定义中引用得表或视图必须存在.但就是,创建了视图后,能够舍弃定义引用得表或视图。
要想检查视图定义就是否存在这类问题,可使用CHECKTABLE语句;
(7) 在定义中不能引用TEMPORARY表,不能创建TEMPORARY视图;
(8) 在视图定义中命名得表必须已存在;
(9) 不能将触发程序与视图关联在一起;
(10)在视图定义中允许使用ORDERBY,但就是,如果从特定视图进行了选择,而该视图使用了具有自己ORDERBY得语句,它将被忽略。
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("N","Y”)表示,该数据列得取值要么就是"Y",要么就就是"N”。
ﻫSET可取多值。
它得合法取值列表最多允许有64个成员。
空字符串也就是一个合法得SET值。
ENUM与SET得值就是以字符串形式出现得,但在内部,MySQL以数值得形式存储它们.
ENUM得合法取值列表中得字符串被按声明定义得顺序被编号,从1开始.
SET得编号不就是按顺序进行编号得,SET中每一个合法取值都对应着SET值里得一个位。
第一个合法取值对应0位,第二个合法取值对应1位,以此类推,如果数值形式得SET值等于0,则说明它就是一个空字符串,如果某个合法得取值出现在SET数据列里,与之对应得位就会被置位;如果某个合法得取值没有出现在SET数据列里,与之对应得位就会被清零。
正因为SET值与位有这样得对应关系,所以SET数据列得多个合法取值才能同时出现并构成SET值。
9、请说明truncate table与deletefrom得区别。
●DELETE from
•通过where指定删除范围
•执行效率低
•返回被删除得记录数
•面向事务
●TRUNCATEtable
•只能删除全部数据
•执行效率高
•返回值为0
•没有事务
答:
TRUNCATETABLE 与不带 WHERE得DELETE功能就是一样得,都就是删除表中得所有数据,不过TRUNCATETABLE速度更快,占用得日志更少,这就是因为 TRUNCATE TABLE直接释放数据页并且在事务日志中也只记录数据页得释放,而DELETE 就是一行一行地删除,在事务日志中要记录每一条记录得删除.那么可不可以用TRUNCATETABLE代替不带WHERE得DELETE呢?
在以下情况就是不行得:
1、要保留标识得情况下不能用TRUNCATE TABLE,因为 TRUNCATE TABLE会重置标识。
2、需要使用触发器得情况下不能使用TRUNCATETABLE,它不会激发触发器。
ﻫ 3、对于由FOREIGNKEY约束引用得表(即主键所在得表,不就是外键所在得表)不能使用TRUNCATETABLE。
ﻫ 4、对于参与了索引视图得表不能使用TRUNCATETABLE,注意指索引视图,并非普通视图。
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、字母:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MySQL数据库开发 MySQL 数据库 开发 期末 复习 试题