《MYSQL期末复习题(共11页).doc》由会员分享,可在线阅读,更多相关《MYSQL期末复习题(共11页).doc(11页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上项目一:1、什么是数据库?数据库:DataBase简写DB,是按照一定的数据结构来组织、存储和管理数据的集合。2、数据库的特点:数据结构化、数据共享、数据独立性高、 数据统一管理与控制。3、数据库系统的组成:DataBase System简写DBS,由数据库、数据库管理系统(DBMS)和数据库应用程序组成。4、SQL语言的特点: SQL是结构化查询语言,是一种数据库查询语言和程序设计语言,主要用于管理数据库中的数据。它是关系型数据库语言的标准。5、SQL语言的组成:数据定义语言DDL、数据操作语言DML、数据查询语言DQL、数据控制语言DCL6、数据库中的操作都是通过
2、SQL语句来完成的。项目二:1、创建数据库的命令:create database 库名 character set 字符集名 collate 校对规则名;2、显示字符集:show character set; 显示校对规则:show collation;3、语法格式中可选项符号: 表示二选一:|4、MySQL中代码的书写不区分大小写5、显示数据库:show databases 显示数据表:show tables 6、显示数据库创建语句的语法格式: SHOW CREATE DATABASE 数据库名; 显示表的创建语句的语法:show create table 表; 显示视图的创建语句的语法:s
3、how create view 视图名7、删除数据库的命令: DROP DATABASE 数据库名删除数据表的命令: DROP TABLE 表名 删除视图的命令:DROP VIEW 视图名8、选择数据库语法格式:USE 数据库名;*创建表前,要先使用use db语句打开库9、查看当前所选的数据库: SELECT DATABASE();项目三:1、在表定义的过程中,字段定义之间用逗号隔开。2、查看表结构: DESC 表名;查看表中某一列的信息: DESC 表名 列名 ;3、复制数据表的语法格式: 1. CREATE TABLE 新表名 LIKE 参照表名 2、 CREATE TABLE 新表名
4、AS (select语句)4、修改列的数据类型: ALTER TABLE 表名 MODIFY 字段名 数据类型;5、添加新列: ALTER TABLE 表名项目四: ADD 新字段 数据类型 FIRST | AFTER 列名1、insert 命令可以插入一条记录也可以同时输入多条记录。2、对于表的主键列,添加数据时要求唯一。当插入第二条相同的记录时,系统提示错误,可以使用REPLACE语句,用第二条记录替换第一条记录。3、如果要修改安全模式数据表中的数据时,应该设置 SQL_SAFE_UPDATES变量才可以修改或删除表中的数据:SET SQL_SAFE_UPDATES=0;4、数据完整性就是
5、指存储在数据库中的数据正确性和相关数据具有一致性。5、外键设置以后,需要使用参数 启用外键: SET FOREIGN_KEY_CHECKS=1;项目五: 禁用外键: SET FOREIGN_KEY_CHECKS=0;1、定义列别名 :当希望查询结果中的某些列或所有列显示时且使用自己选择的列标题时,可以在列名之后使用AS子句来更改查询结果的列别名。语法格式为: SELECT 列名 AS 别名 from 表名2、对表只选择其某些列时,可能会出现重复行。可以使用DISTINCT关键字消除结果集中的重复行。3、已知数据库中的员工表中包含字段:员工ID,姓名,出生日期;写出显示全体员工员工ID和年龄的语
6、句:select 员工ID, YEAR(NOW( )-YEAR(出生日期) as年龄 from 员工;4、其中通配符包括以下两种: %:代表0个或多个字符组成的任意字符串。 _:下划线,代表任意一个字符。(匹配串)5、在使用范围运算符BETWEENAND 用来比较可连续的范围,起始值必须小于终止值。6、取子串函数:SUBSTRING(字段名,位置,长度),写出截取姓名字段中所有学生姓氏的函数。7、MySQL中的聚合函数可以对任何类型的数据进行操作。8、忽略空值:MAX(字段名) 、MIN(字段名)、 SUM(字段名) 、AVG(字段名) 、COUNT(字段名) 计算空值:COUNT(*)9、分
7、组:是对查询结果集中的数据进行分组,group by 分组字段;与它连用的语句是分组条件 having10、在GROUP BY子句中使用ROLLUP操作符,可指定在结果集内不仅包含由 GROUP BY 提供的正常行,还包含汇总行。11、条件的定义和WHERE子句中的条件类似,不过HAVING子句中的条件可以包含聚合函数,而WHERE子句中则不可以。12、SQL标准要求HAVING必须引用GROUP BY子句中的列或用于聚合函数中的列。13、使用ORDER BY子句后可以保证结果中的行按一定顺序排列。14、LIMIT子句主要用于限制被SELECT语句返回的行数: LIMIT 行数 | 行号,偏移
8、项目六1、自然连接:把等值连接目标列中的重复属性列去掉.2、内连接可以同时连接多张表,外连接只能连接两张表。3、如果要连接的表中有列名相同,并且连接的条件就是列名相等,那么ON条件也可以换成USING子句。4、子查询先执行内部查询,后执行外部查询。5、子查询需要用()括起来。6、将子查询放在操作符的右边。7、子查询通常出现在外层主查询的WHERE子句中,也可以出现在主查询的SELECT子句以及HAVING子句中。子查询除了可以用在SELECT语句中,还可以用在INSERT、UPDATE及DELETE语句中。8、ANY或ALL运算符连接的子查询必须与比较运算符同时使用。项目七:1、 视图是一种数
9、据库对象,是从一个或者多个数据表或视图中导出的虚拟表。2、 视图的结构和数据是对表进行查询的结果。3、 当对通过视图看到的数据进行修改时,相应的基表的数据也会发生变化。4、 数据库中只存储视图定义,而不存放视图对应的数据。视图中的数据是在视图被使用时动态生成的。5、 视图的作用:1)视图可以集中数据,满足不同用户对数据的不同要求。 2)视图可以简化复杂查询的结构,方便用户对数据的操作。 3)视图能够对数据提供安全保护。 4)便于组织数据导出。6、 更新视图就是通过视图添加、修改、删除数据。项目八:1、 索引是一种提高查找速度的机制。2、 在数据库中,索引可以提高数据的查询速度,所以创建的索引越
10、多,查询的速度就越快。3、 全文索引只能在VARCHAR或TEXT类型的列上创建。4、 使用CREATE INDEX语句可以在一个已有表上创建索引,一个表可以创建多个索引。5、 创建索引的方法:1)CREATE INDEX命令 2)ALTER TABLE命令 3)created table 命令中项目九:1、 字符串是指用单引号或双引号括起来的字符序列。2、 用单引号将表示日期时间的字符串括起来构成。3、 用户变量只能在BEGINEND语句块中声明。4、 用户变量必须在程序的开头就声明,声明完后,可以在声明它的BEGINEND语句块中使用该变量,其他语句块中不可以使用它。5、使用存储过程的优点
11、有:(1)存储过程在服务器端运行,执行速度快。(2)存储过程执行一次后,其执行规划就驻留在高速缓冲存储器,在以后的操作中,只需从高速缓冲存储器中调用已编译好的二进制代码执行,提高了系统性能。(3)确保数据库的安全。使用存储过程可以完成所有数据库操作,并可通过编程方式控制上述操作对数据库信息访问的权限。6、在MySQL中,服务器处理语句的时候是以分号为结束标志的。7、使用DELIMITER命令将MySQL语句的结束标志修改为其他符号。8、存储过程也可以不加参数,但是名称后面的括号是不可省略的。9、DELIMITER $ CREATE PROCEDURE del_member(IN XH CHAR
12、(12) BEGINDELETE FROM XS WHERE 学号=XH; END $ DELIMITER ; -以上程序的批处理结束标识是$。10、 无参的存储过程在调用时括号不能省略。11、 在MYSQL 中,CASE语句最后以END CASE结束。12、 存储过程创建完后,可以在程序、触发器或者存储过程中被调用,但是都必须使用到CALL语句。13、 调用存储过程时,如果包含输出变量,则该变量前面加。14、 使用SELECT语句来调用存储函数;15、 存储函数必须包含一条RETURN语句,而这条特殊的SQL语句不允许包含于存储过程中。16、 存储函数不能拥有输出参数,因为存储函数本身就是输
13、出参数;17、 触发器触发的时刻有AFTER和BEFORE,以表示触发器是在激活它的语句之前或之后触发。18、 触发器的触发事件有INSERT UPDATE DELETE。项目十1、 用户要访问MySQL数据库,首先必须拥有登录到MySQL服务器的用户名和口令。2、 要使用CREATE USER,必须拥有mysql数据库的全局CREATE USER权限或INSERT权限。3、 Create user 命令中的用户名格式为: ser_namehost_name4、 给某用户授予权限可以使用GRANT语句。使用SHOW GRANTS语句可以查看当前账户拥有什么权限。5、 如果权限授予了一个不存在的
14、用户,MySQL会自动执行一条CREATE USER语句来创建这个用户,但必须为该用户指定密码 。6、 授予数据库权限时ON关键字后面跟“*”和“db_name.*”。 “*”:表示当前数据库中的所有表;“db_name.*”:表示某个数据库中的所有表。7、 在GRANT语法格式中,授予用户权限时ON子句中使用“*.*”,表示所有数据库的所有表。8、 要使用REVOKE,用户必须拥有mysql数据库的全局CREATE USER权限或UPDATE权限。9、 MySQL有三种保证数据安全的方法:(1)数据库备份(2)二进制日志文件(3)数据库复制。10、 使用RENAME USER语句来修改一个已
15、经存在的SQL用户的名字时,要使命令立即生效命令: Flush privileges;11、 在授予表权限时,ON关键字后面跟表名或视图名。12、 MySQL有三种保证数据安全的方法:(1)数据库备份:通过导出数据或者表文件的拷贝来保护数据。(2)二进制日志文件:保存更新数据的所有语句。(3)数据库复制:MySQL内部复制功能建立在两个或两个以上服务器之间,通过设定它们之间的主从关系来实现的。其中一个作为主服务器,其他的作为从服务器。期 末 练 习 题一、选择题1、在MySQL中,服务器处理语句的结束标志为( D )。AGO B C$ D 分号2、存储过程创建后,可在程序、触发器或存储过程中使
16、用( C )语句调用。AEXECUTE BCREATE CCALL D ERTURN3、“abc”属于( A )A、字符串型 B、整型 C、数字型 D、日期和时间类型4、以下不是MySQL索引类型的是( C )A、普通索引 B、全文索引 C、并行索引 D、唯一索引5、以下哪个是正确的创建存储过程的命令( A )A、CREATE PROCEDURE B、CREATE FUNCTION C、CREATE DATABASE D、CREATE TABLE6、下列关于关系数据库中主键的描述正确的是( D )。A.表中允许有多个主键 B.创建唯一的索引,允许空值C.只允许以表中第一字段建立 D.为标识表中
17、唯一的实体7、在SQL语言中,用来插入和更新数据的命令是( A )。A、INSERT,UPDATE B、UPDATE,INSERT C、DELETE,UPDATE D、INSERT,SELECT8、“2016-06-30”属于( D )A、字符串型 B、浮点型 C、数字型 D、日期和时间类型9、要查询book表中所有书名中以“计算机”开头的书籍的价格,可用( D )语句。A. SELECT price FROM book WHERE book_name = 计算机*B. SELECT price FROM book WHERE book_name LIKE 计算机*C. SELECT pric
18、e FROM book WHERE book_name = 计算机%D. SELECT price FROM book WHERE book_name LIKE 计算机%10、创建数据库的语法格式是( C )A、SHOW DATABASE; B、USE 数据库名; C、CREATE DATABASE 数据库名; D、DROP DATABASE 数据库名 ;11、插入记录的语法格式是( B )A、insert from 表名 (字段1,字段2,) values(值1,值2,);B、insert into 表名 (字段1,字段2,) values(值1,值2,);C、insert where 表名
19、 (字段1,字段2,) values(值1,值2,);D、insert into from 表名 (字段1,字段2,) values(值1,值2,);12、查询tb数据表中id=1的记录,语法格式是( D )A、select * into tb where id=1;B、select * where tb where id=1;C、select * delete tb where id=1;D、select * from tb where id=1;13、MySQL脚本文件的扩展名是( A )。A、.sql B、.bak C、.c D、.vbp14、查询book表中price字段的最大值,查询
20、语句是( A )A、select max(price) from book;B、select min(price) from book;C、select price from min book;D、select price from max book;15、表示职称为副教授同时性别为男的表达式为( B )A. 职称=副教授 OR 性别=男 B. 职称=副教授 AND 性别=男C. BETWEEN 副教授 AND 男 D. IN (副教授,男)16、在SELECT语句的SELECT子句中使用关键字( B )可以过滤重复行。A、UNION B、DISTINCT C、ALL D、TOP17、查询xs
21、数据表中的所有数据,并按学号降序排列,语法格式是( C )A、select * from xs group by 学号desc;B、select * from xs order by 学号 ascC、select * from xs order by 学号 desc;D、select * from xs 学号 order by;18、SQL语言中,删除一个表的命令是( C )。ADELETE BCLEAR C DROP DREMOVE19、SQL语言允许使用通配符进行字符串匹配的操作,其中%可以表示( c )。A、0个字符 B、1个字符 C、多个字符 D、以上都可以20、( D )是位于用户和
22、操作系统之间的一层数据管理软件,数据库在建立、使用和维护时由其统一管理和控制。A、DBA B、DB C、DBS D、DBMS21、查询book表中book_name字段和book_price字段的信息,查询语句是( A )A、select book_name,book_price from book ;B、select * from book;C、select book from book_name,book_price ;D、select * from book book_name,book_price;22、模式查找like ba%,下面( B )结果是可能的。A.aili B. baiZ
23、Z C.bba D.cca23、假设“学生”表中有200条记录,语句“SELECT * FROM 学生 limit 5,7;”实现的查询功能是( C )。A、查询学生表中的前两条记录 B、查询学生表中的5至7条记录C、查询学生表中第6位学生开始的7条记录 D、以上都不对24、以下关于嵌套查询的描述中错误的是( C )。A、子查询嵌套在父查询的WHERE子句或HAVING子句中建立父查询的查询条件B、使用子查询时,必须使用圆括号把子查询括起来C、嵌套查询的求解方法是由外向里D、子查询可以用在数据操纵语句中25、公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到
24、部门的联系类型是( D )。A、多对多 B、一对一 C、多对一 D、一对多26、T-SQL语句格式约定中,( A )内包含的参数为可选的。A B() C D以上都是27、Select 职工号 FROM 职工 WHERE 工资1250 命令的功能是( A )。A.查询工资大于1250的纪录 B.查询1250号记录后的记录C.检索所有的职工号 D.从职工关系中检索工资大于1250的职工号28、实体之间的联系,可以是( D )。A一对一联系 B一对多联系 C多对多联系 D以上都是29、在SELECT语句中,( B )子句不能使用集合函数。A、SELECT B、WHERE C、ORDER BY D、H
25、AVING30、用于求系统日期的函数是( B )。AYEAR() BNOW() CCOUNT() DSUM()31、以下不属于数据库对象的是( C )。A、表 B、视图 C、字段 D、存储过程32、以下关于视图的描述正确的是( D?A )。A、使用视图可以提高数据库的安全性 B、使用视图不可以简化数据操作C、视图是由CREATE TABLE语句构造的 D、视图和表一样是由数据构成的33、在T-SQL语言中,修改表结构时,应使用的命令是( C )。 AUPDATE TABLE BINSERT TABLE CALTER TABLE DMODIFY34、以下哪个数据类型的字段可以设置全文索引( B
26、)。ACHAR BTEXT C INT DDATETIME35、查询毕业学校名称与“清华”有关的记录应该用( D)。A. SELECT * FROM 学习经历 WHERE 毕业学校 LIKE *清华*B. SELECT * FROM 学习经历 WHERE 毕业学校 = %清华%C. SELECT * FROM 学习经历 WHERE 毕业学校 LIKE ?清华?D. SELECT * FROM 学习经历 WHERE 毕业学校 LIKE %清华%36、主键约束是非空约束和( C )约束的组合。A检查约束 BNULL约束 C唯一约束 DDEFAULT约束37、在数据库中存储的是( B )A、数据 B
27、、数据模型 C、数据及数据之间的关系 D、信息38、SQL语言是( A)语言,容易学习。A、过程化 B、非过程化 C、格式化 D、导航式39、对于MySQL错误的说法是( D )A、MySQL是一款关系数据库系统 B、MySQL是一款网络数据库系统 C、MySQL可以在Linux或者是Windows下运行 D、MySQL对SQL的支持不太好40、使用索引下列哪个说法是正确的( B )。A. 节省磁盘空间 B. 缩短查询时间 C. 在执行插入、修改、删除时节省时间 D. 与表无关41、SQL语言中,条件年龄 BETWEEN 15 AND 35表示年龄在15至35之间,且( A )。A.包括15岁
28、和35岁 B.不包括15岁和35岁C.包括15岁但不包括35岁 D.包括35岁但不包括15岁42、创建视图是通过( B )语句实现的。A、show view B、create view C、drop view D、drop43、在视图上不能完成的操作是( B )。A更新视图数据 B在视图上定义新的基本表 C在视图上定义新视图 D查询44、下面( B )语句用于创建数据库表。A、CREATE DATABASE B、CREATE TABLE C、ALTER DATABASE D、ALTER TABLE45、假如有两个表的连接是这样的:table1 INNER JOIN table2 其中table
29、1和table2是两个具有公共属性的表,这种连接会生成哪种结果集?( D )A. 包括table1中的所有行,不包括table2的不匹配行B. 包括table2中的所有行,不包括table1的不匹配行C. 包括和两个表的所有行 D. 只包括table1和table2满足条件的行46、在MySQL中,通常使用( A )语句来指定一个已有数据库作为当前工作数据库。AUSING BUSED CUSES DUSE 47E-R图提供了表示信息世界中实体、属性和( B )的方法。A数据 B联系 C 表 D模式48E-R图是数据库设计的工具之一,它一般适用于建立数据库的( A )A概念模型 B结构模型 C物
30、理模型 D逻辑模型49将E-R图转换到关系模式时,实体与联系都可以表示成( B )。A属性 B关系 C键 D域50、可用于从表或视图中检索数据的SQL语句是( A )。ASELECT语句BINSERT语句C UPDATE语句DDELETE语句51、SQL语言又称_C_。A结构化定义语言B结构化控制语言C结构化查询语言D结构化操纵语言52、下列( B )类型不是MySQL中常用的的数据类型。AINTBVARCTIMEDCHAR53、以下哪一个不是MySQL逻辑模型( C )。A关系模型B网络模型C概念模型D层次模型54、以下哪种数据类型的字段可以创建全文索引( C )。AINTBCHARCTEX
31、TDDATE二、填空题1用二维表结构表示实体以及实体间联系的数据模型称为_关系_数据模型。2数据库设计包括概念设计、_逻辑设计_和物理设计。3在E-R图中,矩形表示_实体_。4、MySQL安装成功后,在系统中会默认建立一个_root_用户。5、在MySQL中,通常使用_null_来表示一个列没有值或缺值的情形。6、在CREATETABLE语句中,通常使用_primary key_关键字来指定主键。7、ORDER BY子句在SELECT语句中所起的作用是 排序 。8、在SELECT语句中,对查询结果进行排序,应使用 ORDER BY 子句。9、GROUP BY子句在SELECT语句中所起的作用是
32、 分组 。10、在SELECT语句中, having 子句用于对分组统计进一步设置条件,对结果再次进行筛选。11、HAVING子句与WHERE子句很相似,其区别在于:WHERE子句作用的对象是_表条件_,HAVING子句作用的对象是_组条件_。12、表示职称为副教授同时性别为男的表达式为 职称=副教授 and性别=男 。13、SQL语句中,表示年龄在40至50之间的表达式为 年龄40 and 年龄 50 。14、用于计算字段累加和与统计记录数的集合函数分别是_sum()_和_count()_。15、MySQL中聚合函数有最大、最小、求和、平均和计数等,它们分别是_max()_、_min()_、
33、_avg()_、avg()和count()。16、计算字段平均值的函数是_avg()_,统计字段最大值的函数是_max()_。17、通配符_%_代表任意长度(长度也可为0)的字符串,通配符 _ 代表任意单个字符。18、可以获取系统当前日期和时间的函数是 now() 。19、视图是在基本表的基础上,通过 查询语句 语句生成的。20、表是由行和列组成的,行有时也称为_ 记录 _,列有时也称为_ 字段 _或域。21、实体之间的联系类型有三种,分别为_ 一对一 _、_ 一对多 _和_ 多对多 _。22、修改表结构的语句是_ alter table ,删除表的语句是_ drop table _。23、数
34、据库系统的核心软件是 DBMS数据库管理系统 _。24、创建、修改和删除数据库的命令分别是 create _Database、 alter _Database和 drop _Database。25、按照数据结构的类型来命名,逻辑模型分为层次模型、_ 网状模型 _和_ 关系模型 _。26、DBMS是指_ 数据库管理系统 _,它是位于用户和_ 数据库 _之间的一层管理软件。27、数据库系统一般是由_ 程序设计人员 _、_ 程序开发工具 _、_ 数据库 _应用系统、数据库管理员和用户组成。28、MySQL中只能在_ varchar _和_ text _类型的字段上创建全文索引。三、判断题1、设置惟一
35、约束的列可以为空。 T2、一张表允许有多个主键,但只能有一个外键。 F3、使用子查询时,必须使用圆括号把子查询括起来。 T4、在SELECT语句中,若要把记录进行降序排列应使用“ORDER BY 字段名 DESC ”子句。 T5、在WHERE子句中,可以用OR逻辑表达式来代替IN表达式。F6、SUM函数用于统计数值型和日期时间型字段的累加和。F7、聚合函数SUM( )与AVG( )可以用来操作任何类型的数据。F8、IN运算符可以查找属性值属于指定集合的记录。T9、职称 in (教授,副教授)与职称=教授 or 职称=副教授等价。F10 、子查询必须放在操作符的右边。T11、子查询可以放在操作符
36、的右边也可以放在操作符的左边。F12、子查询可以嵌套在父查询的任意子句中,建立父查询的查找条件。F13、在使用子查询时,必须使用括号把子查询括起来,以便区分外查询和子查询。T14、使用关键字DISTINCT可以把查询结果中的重复行屏蔽。T15、通配符“_”表示某单个字符。T16、在MySQL中,可以使用LIKE结合通配符实现模糊查询,其中通配符“_”代表单个字符 。T17、DELETE语句只是删除表中的数据,表本身依然存在数据库中。T18、建立索引的目的是为了加快查询速度。T19、在数据库中建立的索引越多越好 。F20、视图本身并不存储数据,因为视图是一个虚拟表。T21、数据库中不仅存放视图定
37、义,还存放视图数据。F22、视图的结构和数据是对表进行查询的结果。T23、通过视图可以插入、修改或删除数据,因此视图也是一个实际存在的表。F24、存储过程在第一次执行时进行编译,然后将编译好的代码保存在高速缓存中,供再次执行存储过程时调用,以提高其执行速度。T25、在MySQL中利用CALL命令调用存储过程。T26、在MySQL中,局部变量必须先由用户定义和赋值后才可以使用。F27、数据管理技术经历了人工管理、文件系统、数据库系统三个阶段。T28、关系模型的数据结构是二维表格。T29、数据库是长期存储在计算机内有组织的、可共享的数据集合。T30、E-R模型提供了表示实体、属性和关系的方法。矩形表示实体,菱形表示属性,椭圆表示关系。F31、char、varchar数据类型值在使用时可以要用单引号或双引号括起来。T32、MySQL语句在书写时不区分大小写。T33、创建表时,DATE类型的字段,需要指定长度。F34、主键约束是非空约束和唯一约束的组合。T35、MySQL中可以在任意类型的字段上创建全文索引 F 专心-专注-专业
限制150内