《MYSQL数据库》复习资料
《MySQL数据库》课程期末复习资料
《MySQL数据库》课程讲稿章节目录:
第一章、数据库设计概率
01数据库技术概述
02关系数据库概述
03数据库系统结构
04数据库设计概述.
05 E-R图
06关系数据库设计
07评价数据库表设计
第二章、MySQL基础知识
01 MySQL概述
02字符集以及字符序设置
03 MySQL数据库管理
04 MySQL存储引擎
05 MySQL表管理
06系统变量
07 MySQL数据库备份和恢复
第三章、MySQL表结构的管理
01非数值数据类型
02数值数据类型
03创建表
04修改表结构
05索引
第四章、表记录的更新操作
01表记录的插入
02表记录的修改与删除
第五章、表记录的检索
01 select语句概述
02使用where子句过滤结果集
03多表连接
04结果集排序、汇总与分组
05子查询
06使用正则表达式模糊查询
07全文检索概述
08全文检索方式与复杂应用
第六章、MySQL编程基础
01常量
02用户自定义变量
03运算符与表达式
04定义函数
05条件控制语句
06循环语句
07数学函数
08字符串函数
09数据类型转换函数与条件控制函数
10日期和时间函数
11系统信息函数和其他函数
第七章、视图与触发器
01视图
02触发器概述
03使用触发器
04临时表与派生表
第八章、存储过程与游标
01存储过程创建与调用
02存储过程应用
03存储过程查看
04错误触发条件和错误处理
05游标
06预处理SQL语句
第九章、事务机制和锁机制
01事务机制的必要性
02回滚与提交
03事务
04事务应用
05锁机制概述
06表级锁与行级锁
07意向锁
08事务的ACID特性
第十章、网上选课系统的开发
01系统分析
02系统设计
一、客观部分:(单项选择、多项选择、判断)
(一)、单项选择
1.在数据库设计中,将E-R图转换成关系数据模型的过程属于(C)
A.需求分析阶段
B.概念设计阶段
C.逻辑设计阶段
D.物理设计阶段
2.设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课号,课名),选课SC(学号,课号,成绩),则表SC的关键字(键或码)为(C)
A.课号,成绩
B.学号,成绩
C.学号,课号
D.学号,姓名,成绩
3.数据库管理系统提供的数据控制功能包括(D)
A.数据的完整性
B.恢复和并发控制
C.数据的安全性
D.以上所有各项
4.数据库系统的三级模式结构是(A)
A.模式,外模式,内模式
B.外模式,子模式,内模式
C.模式,逻辑模式,物理模式
D.逻辑模式,物理模式,子模式
5.数据库系统三级模式之间的两级映像指的是(B)
A.外模式/模式映象、外模式/内模式映象
B.外模式/模式映象、模式/内模式映象
C.外模式/内模式映象、模式/内模式映象
D.子模式/模式映象、子模式/内模式映象
6.下列关于数据的叙述中,错误的是(A)
A.数据的种类分为文字、图形和图像三类
B.数字只是最简单的一种数据
C.数据是描述事物的符号记录
D.数据是数据库中存储的基本对象
7.设有部门和职工两个实体,每个职工只能属于一个部门,一个部门可以有多名职工,则部门与职工实体之间的联系类型是(A)
A.1:n
B.0.0423611111111111
C.m:n
D.0:m
8.一间宿舍可住多个学生,则实体宿舍和学生之间的联系是(B)
A.一对一
B.一对多
C.多对一
D.多对多
9.在数据管理技术发展的三个阶段中,数据共享最好的是(C)
A.人工管理阶段
B.文件系统阶段
C.数据库系统阶段
D.三个阶段相同
10.假设有借书信息表,结构为:借书信息(借书证号,借书人,住址,联系电话,图书号,书名,借书日期),如果每个借书人一本书只能借一次,则该表的主键是(A)
A.借书证号,图书号
B.借书证号
C.借书证号,借书人
D.借书证号,图书号,借书日期
11.列关于数据库的叙述中,错误的是(A)
A.数据库中只保存数据
B.数据库中的数据具有较高的数据独立性
C.数据库按照一定的数据模型组织数据
D.数据库是大量有组织、可共享数据的集合
12.DBS的中文含义是(A)
A.数据库系统
B.数据库管理员
C.数据库管理系统
D.数据定义语言
13.关于E-R图,以下描述中正确的是(C)
A.实体可以包含多个属性,但联系不能包含自己的属性
B.联系仅存在于两个实体之间,即只有二元联系
C.两个实体之间的联系可分为1:1、1:N、M:N三种
D.通常使用E-R图建立数据库的物理模型
14.下列关于数据库的叙述中,不准确的是(A)
A.数据库中存放的对象是数据表
B.数据库是存放数据的仓库
C.数据库是长期存储在计算机内的、有组织的数据集合
D.数据库中存放的对象可为用户共享
15.下列选项中与DBMS无关的是 ① 概念模型 ; ② 逻辑模型 ; ③ 物理模型(A)
A.①
B.①③
C.①②③
D.③
16.与文件系统阶段相比,关系数据库技术的数据管理方式具有许多特点,但不包括(A)
A.支持面向对象的数据模型
B.具有较高的数据和程序独立性
C.数据结构化
D.数据冗余小,实现了数据共享
17.在E-R图中,用来表示实体联系的图形是(C)
A.椭圆形
B.矩形
C.菱形
D.三角形
18.按照数据库规范化设计方法可将数据库设计分为六个阶段,下列不属于数据库设计阶段的是(D)
A.概念结构设计
B.逻辑结构设计
C.需求分析
D.功能模块设计
19.在关系模型中,下列规范条件对表的约束要求最严格的是(A)
A.BCNF
B.1NF
C.2NF
D.3NF
20.设有商品库存表,规定表中的库存量值必须大于等于0。根据这个规定应建立(A)
A.用户定义完整性约束
B.实体完整性约束
C.参照完整性约束
D.缺省值约束
21.关系模型中,域的含义是(A)
A.属性的取值范围
B.元组
C.属性
D.属性值
22.一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间的联系是(C)
A.一对一
B.一对多
C.多对多
D.多对一
23.下列关于数据库系统三级模式结构的描述中,正确的是(B)
A.一个数据库可以有多个模式
B.一个数据库可以有多个外模式
C.一个数据库可以有多个内模
D.一个数据库可以有多个模式和外模式
24.根据关系模式的完整性规则,以下关于主键的叙述中正确的是(C)
A.主键不能包含两个字段
B.主键不能作为另一个关系的外键
C.主键不允许取空值
D.主键可以取重复值
25.在数据库系统的三级模式结构中,一个数据库只能有一个(B)
A.模式和外模式
B.模式和内模式
C.子模式
D.外模式
26.以下关于数据库概念模型的叙述中,错误的是(A)
A.数据库概念模型与所采用的数据库管理系统相关
B.数据库概念模型与具体的计算机无关
C.数据库概念模型的表示方法是E-R图
D.概念模型是对信息世界的建模
27.下列选项中,属于1:n联系的两个实体集是(A)
A.所在部门与职工
B.图书与作者
C.运动项目与参赛运动员
D.人与身份证
28.数据库系统的三级模式不包括(D)
A.概念模式
B.内模式
C.外模式
D.数据模式
29.下列关于数据的描述中,错误的是(C)
A.数据是描述事物的符号记录
B.数据和它的语义是不可分的
C.数据指的就是数字
D.数据是数据库中存储的基本对象
30.数据库系统按不同层次可采用不同的数据模型,三层结构中包括物理层、逻辑层和(D)
A.系统层
B.服务层
C.表示层
D.概念层
31.下列关于数据库系统特点的叙述中,错误的是(A)
A.非结构化数据存储
B.数据共享性好
C.数据独立性高
D.数据由数据库管理系统统一管理控制
32.在讨论关系模型时,与"属性"同义的术语是(B)
A.元组
B.列
C.表
D.关系
33.在下列模式中,能够给出数据库物理存储结构与物理存取方法是(B)
A.外模式
B.内模式
C.概念模式
D.逻辑模式
34.在满足实体完整性约束的条件下(A)
A.一个关系中应该有一个或多个候选关键字
B.一个关系中只能有一个候选关键字
C.一个关系中必须有多个候选关键字
D.一个关系中可以没有候选关键字
35.设有E-R图,含有A、B两个实体,A、B之间联系的类型是m:n,则将该E-R图转换为关系模式时,关系模式的数量是(A)
A.3
B.2
C.1
D.4
36.数据库系统按不同层次可采用不同的数据模型,一般可分为三层:物理层、概念层和(D)
A.系统层
B.服务层
C.表示层
D.逻辑层
37.在数据库系统的三级模式结构中,面向某个或某几个用户的数据视图是(A)
A.外模式
B.模式
C.内模式
D.概念模式
38.一个教师可讲授多门课程,一门课程可由多个教师讲授。则实体教师和课程间的联系是(D)
A.1∶1联系
B.1∶m联系
C.m∶1联系
D.m∶n联系
39.模式/内模式映像保证数据库系统中的数据能够具有较高的(B)
A.逻辑独立性
B.物理独立性
C.共享性
D.结构化
40.常见的数据库系统运行与应用结构包括(A)
A.C/S和B/S
B.B2B和B2C
C.C/S和P2P
D.B/S
41.数据库、数据库管理系统和数据库系统三者之间的关系是(B)
A.数据库包括数据库管理系统和数据库系统
B.数据库系统包括数据库和数据库管理系统
C.数据库管理系统包括数据库和数据库系统
D.不能相互包括
42.定义数据库全局逻辑结构与存储结构之间对应关系的是(A)
A.模式/内模式映象
B.外模式/内模式映象
C.外模式/模式映象
D.以上都不正确
43.下列不属于数据库管理系统主要功能的是(A)
A.数据计算功能
B.数据定义功能
C.数据操作功能
D.数据库的维护功能
44.数据独立性是指(A)
A.物理独立性和逻辑独立性
B.应用独立性和数据独立性
C.用户独立性和应用独立性
D.逻辑独立性和用户独立性
45.MySQL中用来创建数据库对象的命令是(A)
A.CREATE
B.ALTER
C.DROP
D.GRANT
46.在MySQL中,指定一个已存在的数据库作为当前工作数据库的命令是(A)
A.USE
B.USING
C.CREATE
D.SELECT
47.在关系数据库中,用来表示实体间联系的是(B)
A.属性
B.二维表
C.网状结构
D.树状结构
48.公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员。则实体部门和职员间的联系是(C)
A.1:1联系
B.m:1联系
C.1:m联系
D.m:n联系
49.在数据库系统的三级模式结构中,一个数据库可以有多个(B)
A.模式
B.外模式
C.内模式
D.以上皆正确
50.数据库的英文缩写是(A)
A.DB
B.DBS
C.DBMS
D.DBA
51.实体型与实体集之间的关系是(A)
A.型与值
B.整体与部分
C.两者含义相同
D.两者无关
52.在数据库的概念结构设计过程中,最常用的是(A)
A.实体-联系模型图(E-R模型图)
B.UML图
C.程序流程图
D.数据流图
53.在MySQL中,使用关键字AUTO_INCREMENT设置自增属性时,要求该属性列的数据类型是(A)
A.INT
B.DATETIME
C.VARCHAR
D.DOUBLE
54.以下关于PRIMARY KEY和UNIQUE的描述中,错误的是(A)
A.UNIQUE约束只能定义在表的单个列上
B.一个表上可以定义多个UNIQUE,只能定义一个PRIMARY KEY
C.在空值列上允许定义UNIQUE,不能定义PRIMARY KEY
D.PRIMARY KEY和UNIQUE都可以约束属性值的唯一性
55.下列关于用户及权限的叙述中,错误的是(A)
A.删除用户时,系统同时删除该用户创建的表
B.root用户拥有操作和管理MySQL的所有权限
C.系统允许给用户授予与root相同的权限
D.新建用户必须经授权才能访问数据库
56.把对Student表和Course表的全部操作权授予用户User1和User2的语句是(A)
A.GRANT All ON Student, Course TO User1, User2;
B. GRANT Student, Course ON All TO User1, User2;
C. GRANT All TO Student, Course ON User1, User2;
D. GRANT All TO User1, User2 ON Student, Course;
57.下列工具中,非图形化用户界面的MySQL管理工具是(A)
A.mysql
B.phpAdmin
C.Navicat
D.MySQL Workbench
62.设有表达式:CHECK(score>=0 AND score<=100),关于该表达式,下列叙述中错误的是(A)
A.CHECK是能够单独执行的SQL语句
B.该表达式定义了对字段score 的约束
C.score的取值范围为0-100(包含0和100)
D.以上都是错误的
63.以下不能开启事件调度器的语句是(A)
A.SELECT EVENT_SCHEDULER;
B.SET GLOBAL EVENT_SCHEDULER=1;
C.SET GLOBAL EVENT_SCHEDULER=TRUE
D.SET GLOBAL EVENT_SCHEDULER=ON
64.用户LISA在MySQL中建立了一个读者借阅图书数据库,在该数据库中创建了读者表、图书表和借阅表,并为该数据库添加了两个用户U1和U2,给U1授予对所有数据表的查询权限,给U2授予对所有数据表的插入权限,下列用户中不能使用CREATE USER创建用户的是(C)
A.root
B.LISA
C.U1
D.U2
65.修改用户登录口令的命令是(A)
A.SET PASSWORD
B.UPDATE PASSWORD
C.CHANGE PASSWORD
D.MODIFY PASSWORD
66.常用的MySQL图形化管理工具不包括(D)
A.phpMyAdmin
B.Navicat
C.MySQL Workbench
D.mysqldump
67.以下关于二进制日志文件的叙述中,错误的是(A)
A.使用二进制日志文件能够监视用户对数据库的所有操作
B.二进制日志文件记录所有对数据库的更新操作
C.启用二进制日志文件,会使系统性能有所降低
D.启用二进制日志文件,会浪费一定的存储空间
68.下列备份方式中不能同时备份表结构和数据的是(A)
A.使用SELECT INTO…OUTFILE语句
B.使用mysqldump程序
C.使用图形界面工具phpMyAdmin
D.使用直接复制
69.以下所列出的工作中,不属于数据库运行维护的工作是(A)
A.系统实现
B.备份数据库
C.性能检测
D.安全性保护
70.MySQL中,修改用户口令的语句是(A)
A.SET PASSWORD
B.CHANGE PASSWORD
C.UPDATE PASSWORD
D.RENAME USER
71.设有如下语句: CREATE USER newuser;执行该语句后,如下叙述中正确的是(A)
A.未授权之前,newuser没有访问数据库的权限
B.语句有错,没有指定用户口令
C.语句有错,没有指定主机名
D.以上语句都不正确
72.在MySQL中,使用mysqldump并以root用户(密码"123")备份数据库mysql1和mysql2,以下正确的命令是(A)
A.mysqldump -u root -p123 --databases mysql1 mysql2 > c:backupdata.sql
B.mysqldump -u root -p 123 --databases mysql1 mysql2 > c:backupdata.sql
C.mysqldump -u root -p123 --databases mysql1 mysql2 < c:backupdata.sql
D.mysqldump -u root -p123 --database mysql1 mysql2 < c:backupdata.sql"
73.下列关于MySQL数据库的叙述中,错误的是(A)
A.执行ATLER DATABASE语句更改参数时,不影响数据库中现有对象
B.执行CREATE DATABASE语句后,创建了一个数据库对象的容器
C.执行DROP DATABASE语句后,数据库中的对象同时被删除
D.CREATE DATABASE与CREATE SCHEMA作用相同
74.在GRANT授权语句中,WITH GRANT OPTION的含义是(D)
A.用户权限在服务器重启之后,将自动撤销
B.该用户权限仅限于所指定的用户
C.用户将获得指定数据库对象上的所有权限
D.允许该用户将此权限转移授予其他用户
75.在MySQL中,MyISAM格式的数据表所对应的存储文件不包括(D)
A..frm文件
B..MYD文件
C..MYI文件
D..ISD文件
76.设有学生表Student(Sno,Sname,Sdept),若要收回用户User1修改学生学号Sno的权限,正确的语句是(A)
A.REVOKE UPDATE(Sno) ON Student FROM User1;
B.REVOKE UPDATE ON Student FROM User1;
C.REVOKE UPDATE(Sno) ON User1 FROM Student;
D.REVOKE UPDATE Student(Sno) FROM User1;
77.在GRANT ALL ON *.* TO…授权语句中,ALL和*.*的含义分别是(A)
A.所有权限、所有数据库表
B.所有数据库表、所有权限
C.所有用户、所有权限
D.所有权限、所有用户
78.在DROP USER语句的使用中,若没有明确指定账户的主机名,则该账户的主机名默认为是(A)
A.%
B.localhost
C.root
D.super
79.在MySQL中,可用于创建一个新数据库的SQL语句为(A)
A.CREATE DATABAS
B.CREATE TABLE
C.CREATE DATABASES
D.CREATE DB
80.按功能对SQL语言分类,对数据库各种对象进行创建、删除、修改的操作属于(A)
A.DDL
B.DML
C.DCL
D.DLL
81.下列关于ALTER DATABASE命令的叙述中,错误的是(A)
A.使用ALTER DATABASE命令时,数据库的名称不能省略
B.使用ALTER DATABASE命令时,用户必须具有对数据库进行修改的权限
C.ALTER DATABASE命令可用于更改数据库的全局特性
D.ALTER DATABASE命令可使用ALTER SCHEMA命令替换
82.SQL基本的使用方式(环境)有两种,分别是(A)
A.交互式和嵌入式
B.过程式和非过程式
C.交互式和过程式
D.基本方式和集合方式
83.MySQL中,下列关于授权的描述中,正确的是(D)
A.只能对数据表和存储过程授权
B.只能对数据表和视图授权
C.可以对数据项、数据表、存储过程和存储函数授权
D.可以对属性列、数据表、视图、存储过程和存储函数授权
84.phpAdmin作为MySQL的一种图形化管理工具,其工作模式为(B)
A.C/S模式
B.B/S模式
C.命令行方式
D.脚本方式
85.在使用MySQL时,要实时记录数据库中所有修改、插入和删除操作,需要启用(A)
A.二进制日志
B.查询日志
C.错误日志
D.恢复日志
86.在不关闭数据库服务器的情况下,对MySQL数据库进行备份与恢复。以下方法中错误的是(A)
A.直接复制所有数据文件
B.使用SELECT INTO…OUTFILE和LOAD DATA…FILE语句进行备份与恢复
C.使用mysqldump命令进行备份与恢复
D.以上方法都错误
87.MySQL命令行客户端的提示符是(A)
A.mysql>
B.c:>
C.sql>
D.$
88.在SQL语言按功能的分类中,不包括(D)
A.DDL
B.DML
C.DCL
D.DLL
89.当使用CREATE DATABASE命令在MySQL中创建数据库时,为避免因数据库同名而出现的错误,通常可在该命令中加入(A)
A.IF NOT EXISTS
B.NOT EXIST
C.NOT EXIST
D.NOT EXIST IN
90.下列关于MySQL的叙述中,正确的是(A)
A.MySQL能够运行于多种操作系统平台
B.MySQL的编程语言是PHP
C.MySQL只适用于中小型应用系统
D.MySQL具有数据库检索和界面设计的功能
91.用户刚创建后,只能登录服务器,而无法执行任何数据库操作的原因是(C)
A.用户还需要修改密码
B.用户尚未激活
C.用户还没有任何数据库对象的操作权限
D.以上皆有可能
92.在安装和配置MySQL实例的向导中,选择决策支持型(OLAP)实例或者联机事务处理(OLTP)型实例的主要区别在于(A)
A.并发连接数不同
B.连接端口不同
C.默认字符集不同
D.服务名不同
93.MySQL中,删除用户的命令是(A)
A.DROP USER
B.REVOKE USER
C.DELETE USE
D.REMOVE USER
94.在安装和配置MySQL实例的向导中,可选的MySQL服务器类型包括(A)
A.Developer Machine(开发者机器)、Server Machine(服务器)、Dedicated MySQL Server Machine(专用MySQL服务器)
B.Developer Machine(开发者机器)、Dedicated MySQL Server Machine(专用MySQL服务器)
C.Server Machine(服务器)、Dedicated MySQL Server Machine(专用MySQL服务器)
D.Developer Machine(开发者机器)、Server Machine(服务器)
95.当MySQL服务器正确安装配置完毕之后,会在MySQL的主目录下生成一个MySQL启动时自动加载的选项文件,该选项文件是(A)
A.my.ini
B.mysql.txt
C.sql.ini
D.mysql.cfg
96.重新命名某个数据表的命令是(B)
A.UPDATE
B.RENAME TABLE
C.DROP TABLE
D.REMOVE
97.MySQL成功安装后,在系统中默认建立的用户个数是(B)
A.0
B.1
C.2
D.3
98.恢复MySQL数据库可使用的命令是(C)
A.mysqldump
B.mysqladmin
C.mysql
D.mysqld
99.对于用直接复制方式备份数据库,如下叙述中正确的是(A)
A.复制数据库时,该数据库不能被使用
B.这种方式备份的数据库不能直接复制到另一个服务器并使用
C.必须关闭MySQL服务器,才能进行复制
D.这种方式只能复制数据,不能复制表结构
100.数据库系统可能发生各种各样的故障,如下可能破坏数据库中数据的故障是(A)
A.磁盘损坏
B.操作系统故障
C.系统断电
D.CPU发生故障
101.MySQL客户端程序mysqldump的作用是(A)
A.备份数据库
B.创建数据库
C.启动MySQL服务器
D.删除数据库
102.设当前用户正在操作数据库db1,现该用户要求跳转到另一个数据库db2,下列可使用的SQL语句是(A)
A.USE db2
B.JUMP db2
C.GO db2;
D.FROM db1 TO db2;
103.撤销用户的权限应使用的语句是(C)
A.DROP
B.ALTER
C.REVOKE
D.GRANT
104.在MySQL中,用户账号信息存储在(C)
A.mysql.host
B.mysql.account
C.mysql.user
D.information_schema.user
105.给定语句mysql -u root -p test
=5000##4000 =< salary <=5000##salary IN [4000,5000]
B.
C.
D.
155.假设有Student表,查询名字中第二个字为"丽"的所有学生姓名、学号的正确命令是(A)
A.SELECT Sname, Sno FROM Student WHERE Sname LIKE '_丽%';
B. SELECT Sname, Sno FROM Student WHERE Sname IS '_丽%';
C. SELECT Sname, Sno FROM Student WHERE Sname LIKE '%丽_';
D. SELECT Sname, Sno FROM Student WHERE Sname LIKE '_丽_';
156.MySQL中,子查询中可以使用运算符ANY,它表示的意思是(B)
A.所有的值都满足条件
B.至少一个值满足条件
C.一个值都不用满足
D.至多一个值满足条件
157.把查询语句的各个子句按执行的先后顺序排列,正确的是(A)
A.FROM→WHERE→GROUP BY→SELECT→ORDER BY
B.SELECT→FROM→WHERE→GROUP BY→ORDER BY
C.WHERE→FROM→SELECT→GROUP BY→ORDER BY
D.FROM→WHERE→SELECT→ORDER BY→GROUP BY
158.设有成绩表,包含学号、分数等字段。现有查询要求:查询有3门以上课程的成绩在90分以上的学生学号及90分以上课程数。以下SQL语句中正确的是(A)
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 学号;
159.设有一个成绩表Student_JAVA(id,name,grade),现需要查询成绩grade倒数第二的同学信息(假设所有同学的成绩各不相同),正确的SQL语句应该是(A)
A.SELECT * FROM Student_JAVA ORDER BY grade limit 1,1;
B. SELECT * FROM Student_JAVA ORDER BY grade DESC limit 1,1;
C. SELECT * FROM Student_JAVA ORDER limit 1,1;
D. SELECT * FROM Student_JAVA ORDER BY grade DESC limit 0,1;
160.统计表中所有记录个数的聚集函数是(A)
A.COUNT
B.SUM
C.MAX
D.AVG
161.查找学生表student中姓名的第二个字为"t"的学生学号sno和姓名sname,下面SQL语句正确的是(B)
A.SELECT sno, sname FROM student WHERE sname='_t%';
B. SELECT sno, sname FROM student WHERE sname LIKE '_t%';
C. SELECT sno, sname FROM student WHERE sname='%t_';
D. SELECT sno, sname FROM student WHERE sname LIKE '%t_';
162.语句"SELECT * FROM tb_emp ORDER BY age DESC LIMIT 1,3"执行后返回的记录是(A)
A.按age排序为2、3、4的三条记录
B.按age排序为1、2、3的三条记录
C.age最大的记录
D.age排序第二的记录
163.在MySQL的SQL语句中,要实现类似分页功能的效果,可使用(A)
A.LIMIT
B.ORDER BY
C.WHERE
D.TRUNCATE
164.MySQL所支持的字符串匹配中,下列通常使用的通配符包括(A)
A.%
B.*
C.?
D.$
165.设有学生表student(sno,sname,sage, smajor),要从student表中检索sname字段值第2个字是"红"的所有学生信息。以下能够按照上述条件进行检索的WHERE表达式是(A)
A.sname LIKE '_红%'
B.sname LIKE '_红_'
C.sname LIKE '%红%'
D.sname LIKE '%红_'
166.与查询语句"SELECT ename, dept FROM tb_employee WHERE dept LIKE '%Sa+_b%' ESCAPE '+';"中LIKE子句相匹配的字符串是(A)
A.Sa_bJ
B.Sa+_bJ
C.Sacbj
D.Sa+cbj
167.SQL 语言一次查询的结果是一个(A)
A.表
B.记录
C.元组
D.数据项
168.SELECT * FROM city limit 5,10描述正确的是(C)
A.获取第6条到第10条记录。
B.获取第5条到第10条记录。
C.获取第6条到第15条记录。
D.获取第5条到第15条记录。
169.GROUP_CONCAT()函数作用是(A)
A.将每组的结果字符串连接起来
B.将每组的结果累加
C.统计每组的记录数
D.统计每组的平均值
170.不属于MySQL逻辑运算符的是(A)
A.|
B.!
C.||
D.&&
171.下列关于空值的描述中,正确的是(C )
A.空值等同于数值
B.空值等同于空字符串
C.空值表示无值
D.任意两个空值均相同
172.在MySQL中编写函数、存储过程时,合法的流程控制语句不包括(A)
A.FOR(...;...;...)循环语句
B.IF...ELSE(包括ELSEIF)条件语句
C.WHILE...END WHILE循环语句
D.CASE...WHEN...ELSE分支语句
173.下列CASE语句中执行结果不为空的是(A)
A.SELECT CASE WHEN 12>5 THEN 'true' ELSE 'false' END;
B.SELECT CASE BINARY 'B' WHEN 'a' THEN 1 WHEN 'b' THEN 2 END;
C.SELECT CASE WHEN -1>0 THEN 'true' END;
D.SELECT CASE 'one' WHEN 1 THEN 'one' WHEN 2 THEN 'two' END;
174.查看存储函数fun具体内容的命令是(A)
A.SHOW CREATE FUNCTION fun;
B.DISPLAY CREATE FUNCTION fun;
C.CREATE FUNCTION fun;
D.SELECT FUNCTION fun;
175.在SQL语句中,与表达式sno NOT IN("s1","s2")功能相同的表达式是(D)
A.sno="s1" AND sno="s2"
B. sno!="s1" OR sno!="s2"
C. sno="s1" OR sno="s2"
D. sno!="s1" AND sno!="s2"
176.设有如下语句:DECLARE tmpVar TYPE CHAR(10) DEFAULT "MySQL" 关于以上命令,下列叙述中错误的是(A)
A.该语句声明了一个用户变量
B. tmpVar的缺省值是"MySQL"
C. tmpVar被声明为字符类型变量
D. tmpVar的作用域是声明该变量的BEGIN…END语句块
177.设smajor是student表中的一个字段,以下能够正确判断smajor字段是否为空值的表达式是(A)
A.smajor IS NULL
B.smajor = NULL
C.smajor=0
D.smajor=''
178.函数NOW()返回的结果是(C)
A.系统的当前日期
B.系统的当前时间
C.系统的当前日期和时间
D.系统的当前用户
179.SQL语句中,判断字段sno是否为空值时,应该使用的表达式是(A)
A.sno IS NULL
B.sno =NULL
C.sno NULL OR NOT
D.以上方式皆可
180.设有如下语句:SELECT SUBSTRING('student',4,3); 执行结果是(A)
A.den
B.stu
C.ent
D.uden
181.在存储过程体的WHILE语句中,要实现退出当前循环,且重新开始一个新的循环,通常可使用的语句是(A)
A.ITERATE语句
B.LEAVE语句
C.JUMP语句
D.GOTO语句
182.在MySQL中,关键字AUTO_INCREMENT用于为列设置自增属性,能够设置该属性的数据类型是(C)
A.字符串类型
B.日期类型
C.整型
D.枚举类型
183.对于日期"2013年10月21日",MySQL默认显示的格式是(A)
A.'2013-10-21'
B.'2013-21-10'
C.'10-21-2013'
D.'21-10-2013'
184.SELECT SUBSTRING_INDEX(‘Welcome to China’, ‘to’, -1)的结果是(C)
A.Welcome
B.to
C.China
D.Welcome to
185.在MySQL中创建视图时,WITH CHECK OPTION 子句的作用是(A)
A.对于可更新视图,保证更新、插入或删除的行要满足视图定义中的谓词条件
B.使用户能从多种角度看待同一数据
C.防止通过视图插入或更新行
D.去掉基本表的某些行和某些列
186.SQL中,激活触发器的命令包括(C)
A.CREATE、DROP、INSERT
B.SELECT、CREATE、UPDATE
C.INSERT、DELETE、UPDATE
D.CREATE、DELETE、UPDATE
187.触发器内容的语句是(A)
A.SHOW TRIGGERS;
B.SELECT * FROM information_schema;
C.SELECT * FROM TRIGGERS;
D.SELECT * FROM TRIGGER;
188.下列关于表和视图的叙述中错误的是(A)
A.表和视图上都可以创建索引
B.视图可以和表一起使用
C.表和视图的数据都可以进行更新操作,但视图的更新受限
D.表和视图都可以使用SQL语句进行查询
189.设有一个成绩表Student_JAVA(id,name,grade),现需要编写一个触发器,监视对该表中数据的插入和更新,并判断学生的成绩grade,如果成绩超过100分,在触发器中强制将其修改为100(最高分),那么应该将触发器定义为(A)
A.BEFORE触发器
B.AFTER触发器
C.AFTER触发器和BEFORE触发器都可以
D.AFTER触发器和BEFORE触发器都不可以
190.当触发器涉及对触发表自身的更新操作时,使用的触发器必须是(A)
A.BEFORE UPDATE
B.AFTER UPDATE
C.UPDATE BEFORE
D.UPDATE BEFORE
191.以下关于触发器的叙述中,正确的是(A)
A.触发器由数据表上的特定事件所触发
B.触发器可以由CREATE操作触发
C.触发器可以带有参数
D.触发器可以建立在视图上
192.在MySQL中,以下关于触发器中AFTER和BEFORE的描述不正确的是(D)
A.BEFORE在INSERT、UPDATE之前,可以对NEW进行修改
B.AFTER不能对NEW进行修
C.两者都不能修改OLD数据
D.UPDATE触发时,只有在AFTER中才能访问到NEW,只有在BEFORE中才能访问到OLD
193.下列关于触发器的描述中错误的是(A)
A.REPLACE语句不能被DELETE触发器激活
B.每个数据表最多支持6个触发器
C.BEFORE INSERT触发器不仅能被INSERT语句激活,也能被LOAD DATA语句激活
D.一个数据表不能同时定义两个BEFORE UPDATE触发器
194.MySQL中的视图机制能够在一定程度上提高数据库系统的(A)
A.安全性
B.稳定性
C.可靠性
D.完整性
195.在MySQL中,INSERT触发器操作数据时,可以使用的临时表是(A)
A.NEW
B.OLD
C.NEW和OLD
D.LAST
196.在MySQL中,存储过程可以使用(D)
A.局部变量
B.用户变量
C.系统变量
D.以上皆可以使用
197.在存储过程中,使用游标的一般流程是(C)
A.打开-->读取-->关闭
B.声明-->读取-->关闭
C.声明-->打开-->读取-->关闭
D.声明-->填充内容-->打开-->读取-->关闭
198.下列关于存储过程的叙述中,正确的是(A)
A.存储过程可以带有参数
B.存储过程能够自动触发并执行
C.存储过程中只能包含数据更新语句
D.存储过程可以有返回值
199.下列创建游标的语法格式中,正确的是(A)
A.DECLARE cursor_name CURSOR FOR select_statement
B.DECLARE CURSOR cursor_name FOR select_statement
C.CREATE cursor_name CURSOR FOR select_statement
D.CREATE CURSOR cursor_name FOR select_statement
200.下列关于存储过程和存储函数的叙述中正确的是(A)
A.存储过程和存储函数都可以直接调用,但调用方式不同
B.存储过程可以带参数,存储函数不能带参数
C.存储过程和存储函数中都可以包含RETURN语句
D.存储过程中能使用游标,而存储函数中不能使用游标
201.在MySQL中,不可以声明和使用游标的情况有(C)
A.存储过程
B.存储函数
C.交互式SQL查询
D.触发器
202.存储过程与存储函数的区别之一是存储过程不能包含(A)
A.RETURN语句
B.局部变量
C.SET语句
D.游标
203.在MySQL的命令行中调用存储过程sp和函数fn的方法分别是(A)
A.CALL sp(), SELECT fn();##SELECT sp(), CALL fn();##CALL sp(), CALL fn();##SELECT sp(), SELECT fn();
B.
C.
D.
204.在使用游标时,实际完成数据读取任务的语句(A)
A.FETCH...INTO...
B.SELECT
C.DECLARE...CURSOR
D.SET
205.在存储过程的定义中,其参数的输入输出类型包括(B)
A.IN、OUT
B.IN、OUT、INOUT
C.IN
D.OUT
206.以下有关MySQL事件的叙述中,错误的是(A)
A.事件是由操作系统调用的过程
B.事件能够按设定的时间自动执行
C.在事件中可以调用存储过程
D.在事件中可以对数据表进行数据更新操作
207.在MySQL中创建事件时,指定的执行时机包括(C)
A.单次计划任务
B.重复计划任务
C.单次计划任务或重复计划任务
D.按照优先级调度执行
208.现要求删除MySQL数据库中已创建的事件,通常使用的语句是(A)
A.DROP EVENT
B.DROP EVENTS
C.DELETE EVENT
D.DELETE EVENTS
209.在使用MySQL进行数据库程序设计时,若需要支持事务处理应用,其存储引擎应该是(A)
A.InnoDB
B.MyISAM
C.MEMORY
D.CSV
210.在MySQL中,可支持事务、外键的常用数据库引擎是(D)
A.MyISM
B.MEMORY
C.FEDERATED
D.InnoDB
211.使用PHP进行MySQL编程时,不能读取结果集中记录的函数是(D)
A.mysql_fetch_array()
B.mysql_fetch_row()
C.mysql_fetch_assoc()
D.mysql_affected_rows()
212.函数mysql_connect()和mysql_pconnect()都能建立与数据库服务器的连接,下列关于两者的描述正确的是(A)
A.mysql_connect()建立非持久连接,可以使用mysql_close()关闭连接
B.mysql_pconnect()建立非持久连接,可以使用mysql_close()关闭连接
C.mysql_pconnect()建立持久连接,可以使用mysql_close()关闭连接
D.mysql_connect()建立非持久连接,不可以使用mysql_close()关闭连接
(二)、多项选择
1.在下列关于"关系"的描述中,正确的是(BCD)
A.行的顺序是有意义的,其次序不可以任意交换
B.列是同质的,即每一列中的分量是同一类型的数据,来自同一个域
C.任意两个元组不能完全相同
D.列的顺序无所谓,即列的次序可以任意交换
2.下列属于数据库设计阶段的工作是(BCD)
A.详细结构设计
B.概念结构设计
C.逻辑结构设计
D.物理结构设计
3.以下关于数据库设计的叙述中,正确的是(BCD)
A.设计数据库就是编写数据库的程序
B.数据库逻辑设计的结果不是唯一的
C.数据库物理设计与具体的设备和数据库管理系统相关
D.数据库设计时,要对关系模型进行优化
4.下列有关MySQL完整性约束的叙述中,错误的是(BCD)
A.实体完整性可由主键约束或候选键约束来实现
B.对完整性约束只能进行添加操作
C.使用ALTER TABLE语句删除完整性约束的同时,会自动删除表本身
D.使用DROP TABLE语句删除一个表的同时,表中的完整性约束不会自动删除
5.下列关于外键的叙述中,正确的是(ABC)
A.外键是在一个或一组属性上定义的约束
B.外键的取值可以为空
C.外键是所参照关系的主键或唯一性索引的属性列
D.外键是唯一标识元组的一个或一组属性
6.使用键的好处是(ABC)
A.降低查找时间
B.强化每行的唯一标识
C.主键不能包含NULL
D.降低磁盘占用空间
7.以下关于MySQL的叙述中,错误的是(BCD)
A.MySQL是一种开放源码的软件
B.MySQL只能运行在Linux平台上
C.MySQL是桌面数据库管理系统
D.MySQL是单用户数据库管理系统
8.下列关于MySQL二进制日志的叙述中,正确的是(BCD)
A.二进制日志包含了数据库中所有操作语句的执行时间信息
B.二进制日志用于数据恢复
C.MySQL默认是不开启二进制日志功能的
D.启用二进制日志,系统的性能会有所降低
9.下列选项中,能用于备份数据库的是(BCD)
A.mysqladmin
B.phpMyAdim
C.mysqldump
D.SELECT语句
10.以下关于MySQL二进制日志文件的叙述中,错误的是(BCD)
A.二进制日志文件用于数据库恢复
B.二进制日志文件记录了对数据表的全部操作
C.二进制日志功能默认是开启的
D.启用二进制日志文件,对系统运行性能没有影响
11.MySQL数据库产品包括(ABCD)
A.MySQL企业服务器
B.MySQL社区服务器
C.MySQL嵌入数据库
D.MySQL集群
12.MySQL安装包括哪些主要部件(ABD)
A.MySQL服务器
B.MySQL客户端程序
C.PL/SQL
D.MySQL非客户端工具
13.MySQL为哪些内容分配内存(ABCD)
A.线程句柄
B.MEMORY存储引擎创建的表
C.客户端缓冲区
D.全局缓冲区与高速缓存
14.与MySQL服务器相互作用的通讯协议包括(ABCD)
A.TCP/IP
B.Socket
C.共享内存
D.命名管道
15.SQL模式值TRADITIONAL是一个复合模式,包含哪些值(ABCD)
A.STRICT_TRANS_TABLES
B.STRICT_ALL_TABLES
C.NO_ZERO_DATE
D.NO_ZERO_IN_DATE
16.导致输入值无效原因是(ABCD)
A.对于数据或时间列,值可能超出范围。
B.对于字符串列,字符串可能太长。
C.于非NULL列赋予NULL值。
D.对于ENUM列赋予非合法的枚举值。
17.数据库对象包括(ABCD)
A.表
B.视图
C.存储过程
D.触发器
18.MySQL存储引擎类型有哪些(ABCD)
A.MyISAM
B.InnoDB
C.MEMORY
D.MERGE
19.设置表的默认字符集关键字是(CD)
A.DEFAULT CHARACTER
B.DEFAULT SET
C.DEFAULT CHARSET
D.DEFAULT CHARACTER SET
20.哪些连接语句的格式是正确的(ABC)
A.mysql - - host=myhost.example.com
B.mysql –h myhost.example.com
C.mysql –hmyhost.example.com
D.mysql –H myhost.example.com
21.关于在非严格模式下处理无效值,哪些是正确的(ABC)
A.基于列定义的限制隐含值来执行类型转化。
B.在可能的情况下调整无效的输入值为合法值,并产生警告信息。
C.转换超出范围的值为范围内的值。
D.拒绝无效值,产生错误。
22.关于在严格模式下处理无效值,哪些是正确的(BCD)
A.允许超出范围的值
B.拒绝超出范围的值。
C.拒绝不正确数据类型的值。
D.拒绝没有缺省值的非空列。
23.在使用ALTER TABLE修改表结构时,关于CHANGE和MODIFY两子句的描述中,正确的是(ABC)
A.CHANGE后面需要写两次列名,而MODIFY后面只写一次
B.两种方式都可用于修改某个列的数据类型
C.都可以使用FIRST或AFTER来修改列的排列顺序
D.MODIFY可用于修改某个列的名称
24.当选择一个数值数据类型时,应该考虑的因素(ABC)
A.数据类型数值的范围。
B.列值所需要的存储空间数量
C.列的精度与标度(适用于浮点与定点数)
D.设计者的习惯
25.改变表名的指令是(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;
26.外键定义中ON DELETE与ON UPDATE有几种设置(ABCD)
A.CASCADE
B.NO ACTION
C.RESTRICT
D.SET NULL
27.关于TRUNCATE TABLE描述正确的是(ABC)
A.TRUNCATE TABLE返回值为0。
B.表中包含AUTO_INCREMENT列,使用TRUNCATE TABLE可以重置序列值。
C.TRUNCATE TABLE本身不能回滚。
D.TRUNCATE TABLE删除表,然后根据表结构重新构建表。
28.对于REPLACE语句描述正确的是(ABD)
A.REPLACE语句返回一个数字以表示受影响的行,包含删除行和插入行的总和。
B.通过返回值可以判断是否增加了新行还是替换了原有行。
C.因主键重复插入失败时直接更新原有行。
D.因主键重复插入失败时先删除原有行再插入新行。
29.关于DELETE和TRUNCATE TABLE区别描述正确的是(ACD)
A.DELETE可以删除特定范围的数据。
B.两者执行效率一样。
C.DELETE返回被删除的记录行数。
D.TRUNCATE TABLE返回值为0。
30.在下列有关GROUP BY语句的描述中,正确的是(ACD)
A.分组条件可以有多个,并且每一个可以分别指定排序方式
B.可以使用WHERE子句对所得的分组进行筛选
C.GROUP BY可配合聚合函数一起使用,但GROUP BY子句中不能直接使用聚合函数
D.除了聚合函数,SELECT语句中的每个列都必须在GROUP BY子句中给出
31.关于MySQL中UNION操作符的使用,描述正确的是(BCD)
A.UNION 用于合并两个或多个 SELECT 语句的结果集,但不会消去任何重复行
B.UNION 内部的 SELECT 语句必须拥有相同数量的列,列也必须拥有相似的数据类型
C.每条 SELECT 语句中的列的顺序必须相同
D.UNION 结果集中的列名总是等于 UNION 中第一个 SELECT 语句中的列名
32.关于临时表的描述正确的是(ABCD)
A.只在创建的会话可见,其它会话不能访问另一个会话创建的临时表。
B.临时表只存在于会话生命周期中。
C.临时表可以与非临时表有相同的名称。
D.临时表不能使用SHOW TABLES显示。
33.关于SELECT语句以下哪些描述是正确的(ABD)
A.SELECT语句用于查询一个表或多个表的数据。
B.SELECT语句属于数据操作语言(DML)。
C.SELECT语句的列必需是基于表的列的。
D.SELECT语句表示数据库中一组特定的数据记录。
34.下列有关NULL值的描述中,错误的是(BCD)
A.要想查找NULL值,必须使用IS NULL测试
B.NULL和空字符是完全一样的
C.可以使用"= NULL"进行NULL值的测试
D.在使用ORDER BY时,NULL值被当做最大值处理
35.存储程序中循环语句有哪些(ABC)
A.REPEAT
B.WHILE
C.LOOP
D.FOR
36.存储程序中处理器有哪几种类型(CD)
A.HANDLE
B.CASE
C.CONTINUE
D.EXIT
37.下列关于MySQL基本表和视图的描述中,错误的是(ABC)
A.对基本表和视图的操作完全相同
B.只能对基本表进行查询操作,不能对视图进行查询操作
C.只能对基本表进行更新操作,不能对视图进行更新操作
D.能对基本表和视图进行更新操作,但对视图的更新操作是受限制的
38.下列关于表的叙述中,正确的是(BCD)
A.所有合法用户都能执行创建表的命
B.MySQL中建立的表一定属于某个数据库
C.建表的同时能够通过Primary Key指定表的主键
D.MySQL中允许建立临时表
39.下列关于触发器的叙述中,正确的是(BCD)
A.触发器可以建立在视图上
B.在触发器的创建中,每个表每个事件每次只允许一个触发器
C.每个表最多支持6个触发器
D.同一表不能拥有两个具有相同触发时刻和事件的触发器
40.下列关于MySQL触发器的描述中,正确的是(ABD)
A.触发器的执行是自动的
B.触发器多用来保证数据的完整性
C.触发器可以创建在表或视图上
D.一个触发器只能定义在一个基本表上
41.下列操作中,可能触发对应关系表上触发器的操作是(BCD)
A.SELECT
B.INSERT
C.UPDATE
D.DELETE
42.下列关于视图的叙述中,错误的是(BCD)
A.使用视图,能够屏蔽数据库的复杂性
B.更新视图数据的方式与更新表中数据的方式相同
C.视图上可以建立索引
D.使用视图,能够提高数据更新的速度
43.关于MySQL中存储函数和存储过程的区别,正确的是(ABC)
A.存储过程可以有输出参数,而存储函数则没有
B.存储函数必须使用RETURN语句返回结果
C.调用存储函数无需使用CALL语句
D.存储函数中不能像存储过程那样定义局部变量
44.存储程序的优点(BCD)
A.逻辑只与MYSQL有关,与客户端语言无关
B.安全:最少的数据访问、单一位置的处理
C.性能:通过交互减少提高性能
D.函数库:可利用数据库服务器函数库
45.存储程序的问题(ABCD)
A.增加服务器负担
B.开发工具有限
C.有限的语言函数与速度
D.有限的调试/配置能力
46.存储程序中选择语句有哪些(AB)
A.IF
B.CASE
C.SELECT
D.SWITCH
47.事务具有哪些特性(ABCD)
A.原子性
B.一致性
C.隔离性
D.持久性
48.哪些语句会导致隐式提交(ABCD)
A.数据定义语句(ALTER、CREATE、DROP)
B.数据访问和用户管理(GRANT、REVOKE)
C.锁语句(LOCK TABLES、UNLOCK TABLES)
D.部分数据操作语句(TRUNCATE TABLE)
49.在并行的事务之间可能存在哪些现象(BCD)
A.隔离
B.脏读
C.不可重复读
D.幻像读
50.MySQL数据库存在哪些隔离级别(ABCD)
A.读未提交
B.读已提交
C.可重复读
D.可串行化
(三)、判断
1.关系模型用二维表表示实体及实体之间的联系。(对)
2.外键的作用是定义表中两个属性之间的关系。(错)
3.关系表中一列的数据类型可以不同。(错)
4.主键是表中能够唯一标识元组的一个属性。(错)
5.一个实体型通常转换为一个关系模式。(对)
6.一个一对多的联系只能转换为一个独立的关系模式。(错)
7.三个实体间的一个联系可以转换为三个关系模式。(错)
8.一个多对多的联系可以与任意一端实体对应的关系合并(错)
9.实体和联系都可以包含自己的属性。(对)
10.联系仅存在于两个实体之间,即只有二元联系。(错)
11.两个实体型之间的联系可分为1:1、1:N两种。(错)
12.通常使用E-R图建立数据库的物理模型。(错)
13.数据库应用系统中的核心问题是数据库维护。(错)
14.数据库管理系统是一种编译系统。(错)
15.MySQL数据库的数据模型是层次模型。(错)
16.MySQL数据库中的数据完整性,不包括参照完整性。(错)
17.在数据库设计中,通常使用E-R图建立数据库的物理模型。(错)
18.SQL是关系数据库的通用查询语言。(对)
19.数据库系统提供的恢复策略,可自动对数据库进行恢复,无需人工干预。(错)
20.数据库恢复是以数据库备份为基础,如果数据库没有备份则无法恢复。(对)
21.对数据库进行恢复时,应将最新的数据库副本加载到系统。(对)
22.进行数据库恢复操作时,先执行一些系统安全性检查。(对)
23.mysqldump命令的作用是备份数据库中的数据(错)
24.数据库恢复是使数据库从错误状态恢复到最近一次备份时的正确状态。(对)
25.数据库恢复的基础是数据库副本和日志文件。(对)
26.数据库恢复措施与数据库备份的类型有关。(对)
27.执行REVOKE语句的结果是用户的权限被撤销,但用户仍保留在系统中##用户的权限被撤销,并且从系统中删除该用户。(对)
28.MySQL服务器使用TCP/IP网络的默认端口号是3306.(对)
29.列级约束针对某个特定的列,包含在列定义中。(对)
30.表级约束与列定义相互独立,不包含在列定义中。(对)
31.列级约束可能涉及到多个列,也可能仅涉及到一个列。(错)
32.表级约束可能涉及到多个列,也可能仅涉及到一个列。(对)
33.在ALTER TABLE命令中使用MODIFY能够更改字段名。(错)
34.索引能够提高数据表读写速度。(错)
35.索引能够提高查询效率。(对)
36.UNIQUE索引是唯一性索引。(对)
37.索引可以建立在单列上,也可以建立多列上。(对)
38.索引通常可减少表扫描,从而提高检索的效率。(对)
39.索引的数据无需存储,仅保存在内存中。(错)
40.一个表上可以有多个聚集索引。(错)
41.所有索引都是唯一性的索引。(错)
42.GROUP子句带WITH ROLLUP的作用是产生多个级别的统计值。(对)
43.在MySQL中,NULL的含义是FALSE。(错)
44.设置语句结束符的命令是delimiter。(对)
45.使用关键字CALL可以调用的数据库对象是触发器。(错)
46.视图可以创建索引。(错)
47.活动的事件能够在指定时刻执行某些任务。(对)
48.事件必须与特定的数据表相关。(错)
49.事件用于维护系统的完整性。(错)
50.删除事件的语句是DELETE EVENT。(错)
二、主观部分:
(一)、填空题
1. 在MySQL中,通常使用USE语句来指定一个已有数据库作为当前工作数据库。
2. 设置表的默认字符集关键字是DEFAULT CHARACTER SET
3. 在创建数据库时,可以使用IF NOT EXISTS子句确保如果数据库不存在就创建它,如果存在就直接使用它。
4. 在CREATE TABLE语句中,通常使用PRIMARY KEY关键字来指定主键。
5. 在创建表格时,可以使用TEMPORARY关键词使当前建立的表为临时表。
6. DROP DATABASE命令用于删除一个数据库。
7. CHAR用于声明一个定长类型的列,其中“字符串长度”用于限制可插入的字符串的最大长度,设置范围为0到255。
8. SQL语句中修改表结构的命令是ALTER TABLE。
1. 如果一个列是整数类型,则可以使用auto increment关键字指定该列的值自动增加。
2. 在MySQL中,通常使用NULL值来表示一个列值没有值或缺值的情形。
3. 将一个列设置为主键的方法是,在列的定义中使用PRIMARY KEY 或 KEY子句。
4. UNION关键字能够将两个或多个SELECT语句的结果连接起来。
5. 如果x->y,y->z成立,那么x->z也成立,这个推理规则称为传递函数依赖。
6. 数据库设计主要包括概念结构设计、逻辑结构设计和物理结构设计。
7. 创建索引通常使用CREATE INDEX语句.
8. 如果关系模式R属于1NF,且每个非主属性都完全函数依赖于R的主码,则R属于2NF。
9. 用二维表结构表示实体以及实体间联系的数据模型称为关系数据模型。
10. mysql中唯一索引的关键字是unique index。
11. 在数据库设计中,将E-R图转换成关系数据模型的过程属于逻辑设计阶段。
12. 如果使用IGNORE关键词,则即使在更新过程中出现错误,更新语句也不会中断。
13. 6.在E-R图中,矩形表示实体。
14. 求数据总和的聚合函数是SUM。
15. 可以用DECLARE CURSOR来声明游标
16. 使用CREATE TABLE语句的FULLTEXT子句,在创建基本表时可以启用全文本搜索
17. 用于将事务处理写到数据库的命令是commit。
18. 在select语句的where子句中,使用正则表达式过滤数据的关键字是regexp。
19. 删除用户账号命令是DROP USER。
20. 在SELECT语句中,使用关键字DISTINCT可以把重复行屏蔽。
21. MySQL中,预设的、拥有最高权限超级用户的用户名为root。
22. START TRANSACTION表示一个新的事务处理块的开始
23. 在正则表达式中,匹配任意一个字符的符号是 . 。
24. 拼接字段的函数是CONCAT()。
25. 返回字符串长度的函数是length()。
26. 存储过程和存储函数的相关信息在 routines 表中存放。
27. 锁是一种用来防止多个客户端时访问数据而产生问题的机制。
1. 事务是将一个数据处理执行步骤的集合作为一个单一单元来处理。
2. 为字段设定默认值,需要使用的关键字是DEFAULT。
3. 在使用 CREATE INDEX 创建索引时,其默认的排序方式是升序。
4. SELECT SUBSTRING(‘Welcome to China’, 9, 2)的结果是to。
5. 在使用CREATE USER创建用户时设置口令的命令是IDENTIFIED BY。
6. MySQL数据库中最小授权对象是列。
7. 当对视图进行 UPDATE、INSERT和DELETE 操作时,为了保证被操作的行为满足视图定义中子查询语句的谓词条件,应在视图定义语句中使用可选择项WITH CHECK OPTION 。
8. 调用存储过程须使用call关键字。
9. 使用create trigger语句可以创建一个触发器。
10. 从游标中提取数据需要使用fetch语句。
11. 读锁也称为共享锁。
12. 原子性用于标识事务是否完全地完成。
13. leave语句用于跳出当前的循环语句。
14. 如果需要执行大量的select语句,出于性能方面的考虑,MyISAM存储引擎是更好的选择。
15. 外模式通常是模式的子集。
(二)、名词解释
1. 数据库
2. 数据库管理系统
3. 关系数据库管理系统
4. 关系数据库
5. 结构化查询语言
1-5,请参看1.1章节内容。
6. 数据库技术
1. 模式
2. 外模式
3. 内模式
6-9请参看1章讲稿。
4. 模型
5. 数据建模
6. 业务建模
10-12请参看1.2章节内容。
7. 数据模型
8. 概念模型
13-14请参看1章讲稿。
9. 主键约束
10. 外键约束
11. 唯一性约束
12. 检查约束
13. 第一范式
14. 第二范式
15. 第三范式
15-21请参看1.4章节内容。
16. MySQL服务
17. MySQL服务实例
18. MySQL服务器
19. 端口号
22-25请参看2.1.1章节内容。
20. MySQL客户机
21. MySQL会话?
26-27请参看2.1.1章节内容。
22. 字符集
1. 字符序
28-29请参看2.2.1章节内容。
2. 共享表空间
3. 独享表空间
30-31请参看2.4.6章节内容。
4. 内连接
5. 外连接
32-33请参看5.1.3章节内容。
6. 相关子查询
7. 非相关子查询
34-35答:如果子查询中仅仅使用了自己定义的数据源,不依靠主查询,能够独立运行的子查询,这种查询是非相关子查询。非相关子查询是独立于外部查询的子查询,子查询总共执行一次,执行完毕后将值传递给主查询。
如果子查询中使用了主查询的数据源,这种查询是相关子查询,此时主查询的执行与相关子查询的执行相互依赖。
8. local检查视图
9. cascaded检查视图
36-37创建视图时,没有使用with check option子句时,即with_check_option的值为0,表示视图为普通视图;使用with check option子句或者with cascaded check option子句时,表示该视图为cascaded检查视图;使用with local check option子句,表示该视图为local检查视图。
检查视图:通过检查视图更新基表数据时,检查视图对更新语句进行了先行检查,只有满足检查条件的更新语句才能成功执行。如果更新语句不满足检查视图定义的检查条件,则检查视图抛出异常,更新失败。
10. 触发器
请参看7.2章节内容。
11. 锁的粒度
12. 隐式锁
13. 显式锁
14. 读锁
1. 写锁
2. 锁的生命周期
39-44请参看9.2章节内容。
3. 脏读
4. 幻读
45-46请参看9.3.2章节内容。
5. 原子性
6. 一致性
7. 隔离性
8. 持久性
47-50请参看9.3章节内容。
(三)、简答题
1. MySQL有哪些特点?
答:请参看2.1.1章节内容。
2. 简单描述MySQL的使用流程。
答:请参看2.1.1章节内容。
3. 请列举my.ini配置文件中常用的参数选项组以及参数信息。
答:请参看2.1.5章节内容。
4. 启动MySQL服务的方法有哪些?停止MySQL服务的方法有哪些?
答:请参看2.1.4章节内容。
5. MySQL客户机连接MySQL服务器的方法有哪些?连接MySQL服务器时,需提供哪些信息?
答:请参看2.1.7章节内容。
6. 您所熟知的字符集、字符序有哪些?它们之间有什么区别?
答:请参看2.2.2章节内容。
7. 请简述MySQL字符集的转换过程。
答:请参看2.2.3章节内容。
1. MySQL系统数据库有哪些?这些系统数据库有什么作用?
答:请参看2.2.1章节内容。
2. 如果仅仅需要在数据库中存储中文简体字符,那么如何设置MySQL字符集?
答:请参看2.2.4章节内容。
3. MySQL数据库类型有哪些?如何选择合适的数据类型?
答:请参看3.1章节内容。请参看3.1.7章节内容。
4. 简单总结char(n)数据类型与varchar(n)数据类型有哪些区别。
答:请参看3.1.3章节内容。
5. datetime与timestamp数据类型有什么区别?
答:请参看3.1.4章节内容。
6. MySQL模式与MySQL复合数据类型有什么关系?
答:请参看3.1.5章节内容。
7. 索引关键字的选取原则有哪些?
答:请参看3.5.2章节内容。
8. 索引与约束有什么关系?
答:请参看3.5.3章节内容。
9. truncate与delete有什么区别?
答:请参看4.3.2章节内容。
10. 更新操作与字符集有什么关系?
答:如果更新语句中包含中文简体字符,应该合理地设置字符集,否则,将把乱码数据更新到数据库表中。详细请参看4.1.2章节内容。
11. replace语句与insert语句有什么区别?
答:请参看4.1.6章节内容。
12. 执行了delete语句后,表结构被删除了吗?使用什么命令可以删除表结构?
答:delete语句删除的是表中的记录,无法删除表结构;删除表结构可以使用drop table命令。
13. 简述limit以及distinct的用法。
答:请参看5.1.2章节内容。
1. NULL参与算术运算、比较运算以及逻辑运算时,结果是什么?
答:请参看5.2.2章节内容。
2. NULL参与排序时,MySQL对NULL如何处理?
答:请参看5.3章节内容。
3. 怎样理解select语句与字符集之间的关系?
4. 答:请参看5.2.3章节内容。
5. MySQL常用的聚合函数有哪些?这些聚合函数对NULL值操作的结果是什么?
答:请参看5.4章节内容。
6. 怎样理解having子句与where子句之间的区别?
答:请参看5.5.2章节内容。
7. MySQL如何使用like关键字实现模糊查询?有什么注意事项?
答:请参看5.2.5章节内容。
8. MySQL如何进行全文检索?全文检索有什么注意事项?
答:请参看5.10章节内容。
9. 系统会话变量与用户会话变量有什么区别与联系?
答:请参看6.1.2章节内容。
10. 用户会话变量与局部变量有什么区别与联系?
答:请参看6.1.2章节内容。
11. 为用户会话变量或者局部变量赋值时,有哪些注意事项?
答:请参看6.1.2章节内容。
12. 编写MySQL存储程序时,为什么需要重置命令结束标记?
答:请参看6.1.5章节内容。
13. 视图与基表有什么区别和联系?视图与select语句有什么关系?
答:视图与基表有什么区别和联系:
数据库表称为基本表或者基表,视图称为虚表。基表的数据发生变化时,虚表的数据也会随之变化。
触发器基于表(严格地说是基于表的记录),这里的表是基表,不是临时表(temporary类型的表),也不是视图。
通过视图虽然可以更新基表的数据,但本书并不建议这样做。原因在于,通过视图更新基表数据,并不会触发触发器的运行。
视图与select语句有什么关系:
视图中保存的就是一条select语句。对于经常使用的结构复杂的select语句,建议将其封装为视图。
1. MySQL触发器中的触发事件有几种?触发器的触发时间有几种?
答:请参看7.2.1章节内容。
2. 如何理解临时表的?临时表与基表有什么关系?
答:请参看7.3.1章节内容。请参看7.3.4章节内容
3. 如何理解视图、子查询、临时表、派生表之间的关系的?
答:请参看7.5章节内容。
4. 查看存储过程定义的方法有哪些?
答:请参看8.1.4章节内容。
5. 请罗列存储过程与函数的区别与联系。
答:请参看8.1.6章节内容。
6. 数据库开发人员定义错误处理机制时,需要提供错误处理类型、错误触发条件以及错误处理程序等信息,错误处理类型有哪些?什么是错误触发条件以及错误处理程序?
答:错误处理类型的取值要么是continue,要么是exit。当错误处理类型是continue时,表示错误发生后,MySQL立即执行自定义错误处理程序,然后忽略该错误继续执行其他MySQL语句。当错误处理类型是exit时,表示错误发生后,MySQL立即执行自定义错误处理程序,然后立刻停止其他MySQL语句的执行。
错误触发条件以及错误处理程序,请参看8.2.1章节内容。
7. 游标的使用步骤是什么?每一个步骤完成什么任务?
答:请参看8.3.1章节内容。
8. 使用预处理SQL语句有哪些注意事项?预处理SQL语句与静态SQL语句有什么区别和联系?
答:注意事项请参看8.4.1章节内容;预处理SQL语句与静态SQL语句有什么区别和联系请参看8.4.4章节内容。
9. 请简单描述事务的必要性。
答:请参看9.1.1章节内容。
10. 关闭MySQL自动提交的方法有哪些?您推荐数据库开发人员使用哪一种方法?
答:请参看9.1.2章节内容。推荐数据库开发人员尽可能地使用MySQL命令“start transaction;”隐式地关闭自动提交,使用MySQL命令“commit;”显示地提交更新语句。
1. 关闭MySQL自动提交后,提交更新语句的方法有哪些?您推荐数据库开发人员使用哪一种方法?
答:请参看9.1.4章节内容。推荐数据库开发人员尽可能地使用MySQL命令“start transaction;”隐式地关闭自动提交,使用MySQL命令“commit;”显示地提交更新语句。
2. 请简单描述典型的事务处理使用方法。
答:请参看9.1.5章节内容。
3. 请简单描述锁机制的必要性。
答:请参看9.2.1章节内容。
4. 锁等待与死锁之间是什么关系?
答:请参看9.2.9章节内容。
5. 请解释事务的ACID特性。
答:请参看9.3.1章节内容。
6. MySQL支持哪些事务隔离级别?默认的事务隔离级别是什么?
答:请参看9.3.2章节内容。
7. 您如何理解事务、锁机制、事务的隔离级别之间的关系?
答:请参看9.4章节内容。