期末复习卷《数据库原理与应用技术--MySQL》(河北科学技术出版社)(五)

2026-07-02
| 2份
| 16页
| 51人阅读
| 0人下载

内容正文:

《数据库原理与应用技术--MySQL》 期末复习卷(五) 时间:90分钟 总分:100分 班级 姓名 学号 成绩 一、选择题(本大题共25小题,每小题2分,共50分) 1、逻辑模型的主要任务是( )。 A. 描述数据的物理存储结构 B. 与数据库管理系统交互 C. 定义数据的逻辑结构和操作约束 D. 实现数据的物理存储 2、哪种数据模型是核心的数据模型,通过表、行和列组织数据,并通过主键和外键建立表间关系( )。 A. 层次模型 B. 关系模型 C. 网状模型 D. 物理模型 3、以下对于SQL语言的描述错误的是( )。 A. SQL类型有DDL、DML、DCL B. 数据操作语言主要用于对数据进行查询及增删改查操作 C. SQL语言可以直接以命令方式交互使用 D. SQL关键字可以跨行书写 4、 MYSQL服务启动后,默认的端口号为( )。 A. 3306 B. 8080 C. 1433 D. 57 5、在命令提示符窗口中使用( )命令用于登录MySQL。 A. net start mysql57 B. exit C. mysql -u root -p D. quit 6、在YEAR类型中,如输入“97”返回的年份为( )。 A. 2097年 B. 1997年 C. 1897年 D. 2197年 7、以下哪种数据类型只能从给定的列表中选择一个( )。 A. SET B. TEXT C. BLOB D. ENUM 8、表达式select "hello" REGEXP "[lo]"的结果为( )。 A. 0 B. 1 C. TRUE D. FALSE 9、若当前系统日期时间是2026年6月24日 15:46:10,表达式SELECT MONTH(CURDATE())+HOUR(CURTIME());( )。 A. 21 B. 2041 C. 52 D. 1036 10、以下关于数据库的说法不正确的是( )。 A. 创建数据库是指在系统磁盘上划分一块区域用于数据的存储和管理 B. SHOW DATABASES或者SHOW SCHEMAS都可以查看用户权限范围内所能查到的数据库 C. USE 数据库名;命令可以测试当前数据库 D. 允许用户创建多个数据库,但是只有一个数据库是当前数据库 11、 在数据表的AGE年龄字段,选择( )数据类型更为合适。 A.INT B. MEDIUMINT C. SMALLINT D. TINYINT 12、查看指定数据库school中的表,正确的命令是( )。 A. SHOW TABLES school; B. SHOW TABLES IN school; C. SHOW TBALES; D. SHOW CREATE TABLE school; 13、修改oneclass数据表中的sex字段的数据类型改为VARCHAR(2),正确的命令是( )。 A. ALTER TABLE oneclass MODIFY sex VARCHAR(2); B. CREATE TABLE oneclass MODIFY sex VARCHAR(2); C. ALTER TABLE oneclass CHANGE sex VARCHAR(2); D. ALTER TABLE oneclass RENAME sex VARCHAR(2); 14、以下关于复制已有表的说法中错误的是( )。 A. 仅复制表结构使用CRETAE TABLE...LIKE B. 复制表结构和数据可以使用CREATE TABLE ....AS SELECT C. 要求获取数据与插入数据的表结构要相同 D. 不会发生主键冲突问题 15、以下组合中与主键约束作用相同的是( )。 A. 唯一约束和默认值约束 B. 非空约束和默认值约束 C. 非空约束和唯一约束 D. 唯一约束和CHECK约束 16、 删除shop表中名为xsshop的外键约束,正确的语句为( )。 A. ALTER TABLE shop DROP PRIMARY KEY xsshop; B. ALTER TABLE shop DROP FOREIGN KEY ; C. ALTER TABLE shop DROP xsshop; D. ALTER TABLE shop DROP FOREIGN KEY xsshop; 17、若要删除表中的全部记录,不正确的表达是( )。 A. 在DELETE语句中使用WHERE 1=1 B. 在DELETE语句中不使用WHERE子句 C. 使用TRUNCATE TABLE语句 D. 使用DROP语句 18、若要查询表中grade字段是69、70、或者80的记录,正确的条件表达式为( )。 A. WHERE grade IN(69,70,80) B. WHERE grade BETWEEN 69 AND 80 C. WHERE grade NOT IN(69,70,80) D. WHERE grade IS(69,70,80) 19、以下关于HAVING子句说法正确的是( )。 A. 可以替代WHERE子句 B. 在GROUP BY分组之后进行筛选结果 C. 必须与WHERE子句一起使用 D. 只能用于单表查询语句中 20、在数据表中执行哪种操作不会受索引的影响( )。 A. INSERT B. TRUNCATE C. UPDATE D. SELECT 21、关于视图的安全性作用,以下说法中正确的是( )。 A. 视图不能提供安全性保护 B. 使用视图会降低数据的安全性 C. 视图可以限制用户访问基础表的特定列 D. 视图将会暴露基础表的所有数据 22、以下不属于存储过程的特点的是( )。 A. 只能接收参数,不能返回参数 B. 代码封装 C. 减少网络交互,效率提升 D. 可复用 23、在数据库设计中,将现实世界的复杂事物归纳为简单的、相互关联的数据模型,这个过程属于( )阶段。 A. 需求分析 B. 概念结构 C. 逻辑结构 D. 数据库实施 24、数据库的不安全因素不包括( )。 A. 安全环境的脆弱性 B. 数据泄露 C. 非授权用户访问 D. 数据库备份 25、使用mysqldump工具备份数据库时,默认生成的备份文件格式为( )。 A. BAK B. SQL C. TXT D. INK 二、判断题(本大题共10小题,每小题1分,共10分) 1、表达式NOT 19-10 和表达式 ! 19-10的结果一样。( ) 2、候选键的个数必须是单个,不能多个。( ) 3、在日期和时间类型中DATETIME支持UTC,而TIMESTAMP不支持UTC。( ) 4、在SELECT语句中,ALL和DISTINCT可以同时使用。( ) 5、在MySQL中,使用ALTER TABLE语句删除表中的数据。( ) 6、在表上建立索引会增加数据表的更新操作成本。( ) 7、视图的定义由CREATE VIEW语句确定,更新数据不会影响定义。( ) 8、REPEAT循环语句实现的是简单的循环,没有退出循环的条件。( ) 9、事件一旦创建,就不能修改其执行时间。( ) 10、在数据库设计的物理设计阶段,选择存储引擎属于优化策略。( ) 三、填空题(本大题共10小题,每小题1分,共10分) 1、_________是网状模型的一个特例。 2、假设当前系统的日期时间为2026年06月26日,表达式SELECT ADDDATE(CURDATE(),6)的结果为_______。 3、使用CHAR类型定义的长度是固定的,而使用_________类型定义的字段长度是可变的。 4、表达式SELECT MID("HAPPY EVERY DAY!",-3,5);的结果为_________。 5、_________谓词用于指定给一个范围,判断数据是否在该范围内。 6、 在MySQL中,要删除chop表中的全部记录,且要求不在日志中进行记录,使用的语句为_________。 7、索引是MySQL中的重要对象,使用_________和_________关键字表示索引,选择其中一个 8、MySQL事件调度器的状态可以通过查询_________变量来查看。 9、数据库恢复技术的核心是_________,建立冗余数据的方法有_________和_________。 10、若插入数据时违反_________约束,会触发“主键重复”错误。 四、 SQL语句题(本大题共5小题,每小题3分,共15分) 在学生信息库information_student中已有student表和score表,表的结构如下。 student表结构 字段名 说明 类型长度 sid 学号 VARCHAR(10) Sname 姓名 VARCHAR(6) sdepartment 院系 VARCHAR(10) sbirthday 出生日期 DATE score表结构 字段名 说明 类型长度 sid 学号 VARCHAR(10) cid 课程编号 VARCHAR(3) sclass 班号 VARCHAR(5) sgrade 成绩 INT 1、建立学生信息库information_student,确保数据库不存在时再进行创建。 2、为score表填充班号字段值是学号的第二个字符,为对应学生的班号。 3、在student表中的sid列上创建一个名为XH的降序普通索引。 4、删除score表中成绩在50-70之间(包括50和70分)的记录。 5、查询student表中出生日期在2011年及以后出生的姓李的学生信息。 五、 读程序题(每空3分,共15分) 1、该程序返回的值为_________。 DELIMITER // CREATE FUNCTION jisuan (X INT,Y INT) RETURNS INT BEGIN WHILE X != 0 DO SET X= X MOD Y; SET Y= Y * X; END WHILE; RETURN Y; END // DELIMITER ; --调用存储函数 SELECT jisuan(30,10) 2、以下程序是使用SQL语句创建的删除触发器,名称为deletetrigger,当在学生student表中删除一个学生时,班级class表中该班级人数对应的减一,以保障数据的完整性,请补充完整代码。 CREATE TRIGGER deletetrigger ____(1)_____ ON ____(2)_____ FOR EACH ROW BEGIN ____(3)_____ class SET NUMBER=____(4)_____ WHERE CLASSNO=OLD.CLASSNO; END; 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $ 《数据库原理与应用技术--MySQL》 期末复习卷(五) 时间:90分钟 总分:100分 班级 姓名 学号 成绩 一、选择题(本大题共25小题,每小题2分,共50分) 1、逻辑模型的主要任务是( )。 A. 描述数据的物理存储结构 B. 与数据库管理系统交互 C. 定义数据的逻辑结构和操作约束 D. 实现数据的物理存储 【答案】C 【解析】逻辑模型主要任务是定义数据的逻辑结构和操作约束,不涉及数据的物理存储细节。 2、哪种数据模型是核心的数据模型,通过表、行和列组织数据,并通过主键和外键建立表间关系( )。 A. 层次模型 B. 关系模型 C. 网状模型 D. 物理模型 【答案】B 【解析】关系模型是核心的数据模型。 3、以下对于SQL语言的描述错误的是( )。 A. SQL类型有DDL、DML、DCL B. 数据操作语言主要用于对数据进行查询及增删改查操作 C. SQL语言可以直接以命令方式交互使用 D. SQL关键字可以跨行书写 【答案】D 【解析】SQL关键字必须完整书写不可以跨行。 4、MYSQL服务启动后,默认的端口号为( )。 A. 3306 B. 8080 C. 1433 D. 57 【答案】A 【解析】默认的端口号为3306不用改。 5、在命令提示符窗口中使用( )命令用于登录MySQL。 A. net start mysql57 B. exit C. mysql -u root -p D. quit 【答案】C 【解析】在命令提示符窗口中使用mysql -u root -p并按Enter键,系统提示输入密码。 6、在YEAR类型中,如输入“97”返回的年份为( )。 A. 2097年 B. 1997年 C. 1897年 D. 2197年 【答案】B 【解析】在YEAR类型中,如输入值为01到69或”01”到”69”时,返回值为2001年到2069年,输入值为70到99或”70”到”99”时,返回值为1970到1999年。 7、以下哪种数据类型只能从给定的列表中选择一个( )。 A. SET B. TEXT C. BLOB D. ENUM 【答案】D 【解析】ENUM是枚举类型,最多包含65535个值,只能从枚举列表中选择其中一个。 8、表达式select "hello" REGEXP "[lo]"的结果为( )。 A. 0 B. 1 C. TRUE D. FALSE 【答案】B 【解析】REGEXP运算符是“[...]”在方括号内的任意字符。 9、若当前系统日期时间是2026年6月24日 15:46:10,表达式SELECT MONTH(CURDATE())+HOUR(CURTIME());( )。 A. 21 B. 2041 C. 52 D. 1036 【答案】A 【解析】MONTH()函数获取日期中的月份值,HOUR()获取时间中的小时。 10、以下关于数据库的说法不正确的是( )。 A. 创建数据库是指在系统磁盘上划分一块区域用于数据的存储和管理 B. SHOW DATABASES或者SHOW SCHEMAS都可以查看用户权限范围内所能查到的数据库 C. USE 数据库名;命令可以测试当前数据库 D. 允许用户创建多个数据库,但是只有一个数据库是当前数据库 【答案】C 【解析】使用SELECT DATABASE()测试当前数据库,USE 数据库名;命令是选择当前数据库。 11、 在数据表的AGE年龄字段,选择( )数据类型更为合适。 A.INT B. MEDIUMINT C. SMALLINT D. TINYINT 【答案】D 【解析】人的年龄一般在0到120岁,TINYINT的无符号数范围为0到255,足够存储年龄的数值。 12、查看指定数据库school中的表,正确的命令是( )。 A. SHOW TABLES school; B. SHOW TABLES IN school; C. SHOW TBALES; D. SHOW CREATE TABLE school; 【答案】B 【解析】SHOW TABLES IN|FROM 数据库名格式用于查看指定数据库中的所有表。 13、修改oneclass数据表中的sex字段的数据类型改为VARCHAR(2),正确的命令是( )。 A. ALTER TABLE oneclass MODIFY sex VARCHAR(2); B. CREATE TABLE oneclass MODIFY sex VARCHAR(2); C. ALTER TABLE oneclass CHANGE sex VARCHAR(2); D. ALTER TABLE oneclass RENAME sex VARCHAR(2); 【答案】A 【解析】修改字段的数据类型语法格式为ALTER TABLE 表名 MODIFY 字段名 数据类型或者ALTER TABLE 表名 CHANGE 旧字段名 新字段名 数据类型。 14、以下关于复制已有表的说法中错误的是( )。 A. 仅复制表结构使用CRETAE TABLE...LIKE B. 复制表结构和数据可以使用CREATE TABLE ....AS SELECT C. 要求获取数据与插入数据的表结构要相同 D. 不会发生主键冲突问题 【答案】D 【解析】可能会遇到主键冲突的问题。 15、以下组合中与主键约束作用相同的是( )。 A. 唯一约束和默认值约束 B. 非空约束和默认值约束 C. 非空约束和唯一约束 D. 唯一约束和CHECK约束 【答案】C 【解析】主键约束保证字段的唯一性和非空性。 16、 删除shop表中名为xsshop的外键约束,正确的语句为( )。 A. ALTER TABLE shop DROP PRIMARY KEY xsshop; B. ALTER TABLE shop DROP FOREIGN KEY ; C. ALTER TABLE shop DROP xsshop; D. ALTER TABLE shop DROP FOREIGN KEY xsshop; 【答案】D 【解析】删除外键约束的正确语句为ALTER TABLE 表名 DROP FOREIGN KEY 外键约束名。 17、若要删除表中的全部记录,不正确的表达是( )。 A. 在DELETE语句中使用WHERE 1=1 B. 在DELETE语句中不使用WHERE子句 C. 使用TRUNCATE TABLE语句 D. 使用DROP语句 【答案】D 【解析】题目要删除表中的全部记录,DROP 是删除整个表,A选项中的WHERE 1=1是永真条件。 18、若要查询表中grade字段是69、70、或者80的记录,正确的条件表达式为( )。 A. WHERE grade IN(69,70,80) B. WHERE grade BETWEEN 69 AND 80 C. WHERE grade NOT IN(69,70,80) D. WHERE grade IS(69,70,80) 【答案】A 【解析】IN谓词用于判断字段的值是否在给定的列表中。 19、以下关于HAVING子句说法正确的是( )。 A. 可以替代WHERE子句 B. 在GROUP BY分组之后进行筛选结果 C. 必须与WHERE子句一起使用 D. 只能用于单表查询语句中 【答案】B 【解析】HAVING子句用于分组之后筛选,分组的关键字为GROUP BY。 20、在数据表中执行哪种操作不会受索引的影响( )。 A. INSERT B. TRUNCATE C. UPDATE D. SELECT 【答案】B 【解析】TRUNCATE命令是直接删除表中的数据,不会受索引的影响。 21、关于视图的安全性作用,以下说法中正确的是( )。 A. 视图不能提供安全性保护 B. 使用视图会降低数据的安全性 C. 视图可以限制用户访问基础表的特定列 D. 视图将会暴露基础表的所有数据 【答案】C 【解析】视图会提供数据安全性,也就是视图可以限制用户对某些数据的访问,只允许用户查看视图定义中的数据。 22、以下不属于存储过程的特点的是( )。 A. 只能接收参数,不能返回参数 B. 代码封装 C. 减少网络交互,效率提升 D. 可复用 【答案】A 【解析】存储过程可以接受参数,也可以返回参数,使用OUT或者INOUT参数返回。 23、在数据库设计中,将现实世界的复杂事物归纳为简单的、相互关联的数据模型,这个过程属于( )阶段。 A. 需求分析 B. 概念结构 C. 逻辑结构 D. 数据库实施 【答案】B 【解析】概念结构设计时数据库实施的第二阶段,核心任务是将现实世界中复杂的需求和事物,抽象为不依赖具体数据库管理系统的、简单直观的概念数据模型。 24、数据库的不安全因素不包括( )。 A. 安全环境的脆弱性 B. 数据泄露 C. 非授权用户访问 D. 数据库备份 【答案】D 【解析】数据库备份是安全措施,用于恢复数据。 25、使用mysqldump工具备份数据库时,默认生成的备份文件格式为( )。 A. BAK B. SQL C. TXT D. INK 【答案】B 【解析】mysqldump默认生成包含SQL语句的文本文件。 二、判断题(本大题共10小题,每小题1分,共10分) 1、表达式NOT 19-10 和表达式 ! 19-10的结果一样。( ) 【答案】错误 【解析】NOT和!均为取反,但是优先级不同,!的优先级高于所有的运算符,NOT优先级低于算术运算符,NOT19-10结果为0,!19-10结果为-10。 2、候选键的个数必须是单个,不能多个。( ) 【答案】错误 【解析】候选键是数据库表中可以唯一标识每一行数据的一个或多个字段的组合。 一个表中可以有多个候选键,其中一个可以被选为主键。 3、在日期和时间类型中DATETIME支持UTC,而TIMESTAMP不支持UTC。( ) 【答案】错误 【解析】DATETIME不支持时区,TIMESTAMP支持时区。 4、在SELECT语句中,ALL和DISTINCT可以同时使用。( ) 【答案】错误 【解析】ALL和DISTINCT是互斥的,不能同时使用。 5、在MySQL中,使用ALTER TABLE语句删除表中的数据。( ) 【答案】错误 【解析】ALTER TABLE语句用于修改表的结构,不删除表中的数据,使用TRUNCATE TABLE或者DELETE FROM语句删除表中的数据。 6、在表上建立索引会增加数据表的更新操作成本。( ) 【答案】正确 【解析】因对表进行插入、更新操作时都需要更新索引,这就可能会增加更新操作的成本和时间。 7、视图的定义由CREATE VIEW语句确定,更新数据不会影响定义。( ) 【答案】正确 【解析】更新数据影响的是基础表的物理数据。 8、REPEAT循环语句实现的是简单的循环,没有退出循环的条件。( ) 【答案】错误 【解析】REPEAT语句中是有循环退出的条件,LOOP循环语句中没有,需配合LEAVE退出循环。 9、事件一旦创建,就不能修改其执行时间。( ) 【答案】错误 【解析】事件创建好之后,可以通过ALTER EVENT进行修改事件的执行时间。 10、在数据库设计的物理设计阶段,选择存储引擎属于优化策略。( ) 【答案】正确 【解析】说法正确。 三、填空题(本大题共10小题,每小题1分,共10分) 1、_________是网状模型的一个特例。 【答案】层次模型 2、假设当前系统的日期时间为2026年06月26日,表达式SELECT ADDDATE(CURDATE(),6)的结果为_______。 【答案】2026-07-02 3、使用CHAR类型定义的长度是固定的,而使用_________类型定义的字段长度是可变的。 【答案】VARCHAR 4、表达式SELECT MID("HAPPY EVERY DAY!",-3,5);的结果为_________。 【答案】AY! 解析:N1可以为负数表示倒数第几个字符,也就是从字符串尾部开始计算起始位置 5、_________谓词用于指定给一个范围,判断数据是否在该范围内。 【答案】BETWEEN...AND...; 6、在MySQL中,要删除chop表中的全部记录,且要求不在日志中进行记录,使用的语句为_________。 【答案】TRUNCATE TABLE chop; 7、索引是MySQL中的重要对象,使用_________和_________关键字表示索引,选择其中一个即可。 【答案】INDEX KEY 8、MySQL事件调度器的状态可以通过查询_________变量来查看。 【答案】EVENT_SCHEDULER 9、数据库恢复技术的核心是_________,建立冗余数据的方法有_________和_________。 【答案】建立冗余数据 数据备份 登记日志文件 10、若插入数据时违反_________约束,会触发“主键重复”错误。 【答案】主键 四、SQL语句题(本大题共5小题,每小题3分,共15分) 在学生信息库information_student中已有student表和score表,表的结构如下。 student表结构 字段名 说明 类型长度 sid 学号 VARCHAR(10) Sname 姓名 VARCHAR(6) sdepartment 院系 VARCHAR(10) sbirthday 出生日期 DATE score表结构 字段名 说明 类型长度 sid 学号 VARCHAR(10) cid 课程编号 VARCHAR(3) sclass 班号 VARCHAR(5) sgrade 成绩 INT 1、建立学生信息库information_student,确保数据库不存在时再进行创建。 【答案】CREATE DATABASE IF NOT EXISTS information_student; 2、为score表填充班号字段值是学号的第二个字符,为对应学生的班号。 【答案】UPDATE score SET sclass=SUBSTRING(sid,2,1); 3、在student表中的sid列上创建一个名为XH的降序普通索引。 【答案】ALTER TABLE student ADD XH(sid DESC);或者 CREATE INDEX XH ON student(sid DESC); 4、删除score表中成绩在50-70之间(包括50和70分)的记录。 【答案】 DELETE FROM score WHERE sgrade BETWEEN 50 AND 70; 5、查询student表中出生日期在2011年及以后出生的姓李的学生信息。 【答案】SELECT * FROM student WHERE YEAR(sbirthday)>=2011 AND sname LIKE “李%”; 五、读程序题(每空3分,共15分) 1、该程序返回的值为_________。 DELIMITER // CREATE FUNCTION jisuan (X INT,Y INT) RETURNS INT BEGIN WHILE X != 0 DO SET X= X MOD Y; SET Y= Y * X; END WHILE; RETURN Y; END // DELIMITER ; --调用存储函数 SELECT jisuan(30,10) 【答案】0 2、以下程序是使用SQL语句创建的删除触发器,名称为deletetrigger,当在学生student表中删除一个学生时,班级class表中该班级人数对应的减一,以保障数据的完整性,请补充完整代码。 CREATE TRIGGER deletetrigger ____(1)_____ ON ____(2)_____ FOR EACH ROW BEGIN ____(3)_____ class SET NUMBER=____(4)_____ WHERE CLASSNO=OLD.CLASSNO; END; 【答案】(1) AFTER DELETE (2)student (3)UPDATE (4) NUMBER-1 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $

资源预览图

期末复习卷《数据库原理与应用技术--MySQL》(河北科学技术出版社)(五)
1
期末复习卷《数据库原理与应用技术--MySQL》(河北科学技术出版社)(五)
2
期末复习卷《数据库原理与应用技术--MySQL》(河北科学技术出版社)(五)
3
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。