MYSQL期末复习题1文档格式.docx
- 文档编号:16949255
- 上传时间:2022-11-27
- 格式:DOCX
- 页数:14
- 大小:27.20KB
MYSQL期末复习题1文档格式.docx
《MYSQL期末复习题1文档格式.docx》由会员分享,可在线阅读,更多相关《MYSQL期末复习题1文档格式.docx(14页珍藏版)》请在冰豆网上搜索。
DROPTABLE表名删除视图的命令:
DROPVIEW视图名
8、选择数据库语法格式:
USE数据库名;
**创建表前,要先使用usedb语句打开库
9、查看当前所选的数据库:
SELECTDATABASE();
项目三:
1、在表定义的过程中,字段定义之间用逗号隔开。
2、查看表结构:
DESC表名;
查看表中某一列的信息:
DESC表名列名;
3、复制数据表的语法格式:
1.CREATETABLE新表名LIKE参照表名
2、CREATETABLE新表名
AS(select语句)
4、修改列的数据类型:
ALTERTABLE表名
MODIFY字段名数据类型;
5、添加新列:
项目四:
ADD新字段数据类型[FIRST|AFTER列名]
1、insert命令可以插入一条记录也可以同时输入多条记录。
2、对于表的主键列,添加数据时要求唯一。
当插入第二条相同的记录时,系统提示错误,可以使用REPLACE语句,用第二条记录替换第一条记录。
3、如果要修改安全模式数据表中的数据时,应该设置SQL_SAFE_UPDATES变量才可以修改或删除表中的数据:
SETSQL_SAFE_UPDATES=0;
4、数据完整性就是指存储在数据库中的数据正确性和相关数据具有一致性。
5、外键设置以后,需要使用参数启用外键:
SETFOREIGN_KEY_CHECKS=1;
项目五:
禁用外键:
SETFOREIGN_KEY_CHECKS=0;
1、定义列别名:
当希望查询结果中的某些列或所有列显示时且使用自己选择的列标题时,可以在列名之后使用AS子句来更改查询结果的列别名。
语法格式为:
SELECT列名AS别名from表名
2、对表只选择其某些列时,可能会出现重复行。
可以使用DISTINCT关键字消除结果集中的重复行。
3、已知数据库中的员工表中包含字段:
员工ID,姓名,出生日期;
写出显示全体员工员工ID和年龄的语句:
select员工ID,YEAR(NOW())-YEAR(出生日期)as年龄from员工;
4、其中通配符包括以下两种:
%:
代表0个或多个字符组成的任意字符串。
_:
下划线,代表任意一个字符。
(匹配串)
5、在使用范围运算符BETWEEN…AND…用来比较可连续的范围,起始值必须小于终止值。
6、取子串函数:
SUBSTRING(字段名,位置,长度),写出截取姓名字段中所有学生姓氏的函数。
7、MySQL中的聚合函数可以对任何类型的数据进行操作。
8、忽略空值:
MAX(字段名)、MIN(字段名)、SUM(字段名)、AVG(字段名)、COUNT(字段名)
计算空值:
COUNT(*)
9、分组:
是对查询结果集中的数据进行分组,groupby分组字段;
与它连用的语句是分组条件having
10、在GROUPBY子句中使用ROLLUP操作符,可指定在结果集内不仅包含由GROUPBY提供的正常行,还包含汇总行。
11、条件的定义和WHERE子句中的条件类似,不过HAVING子句中的条件可以包含聚合函数,而WHERE子句中则不可以。
12、SQL标准要求HAVING必须引用GROUPBY子句中的列或用于聚合函数中的列。
13、使用ORDERBY子句后可以保证结果中的行按一定顺序排列。
14、LIMIT子句主要用于限制被SELECT语句返回的行数:
LIMIT行数|行号,偏移
项目六
1、自然连接:
把等值连接目标列中的重复属性列去掉.
2、内连接可以同时连接多张表,外连接只能连接两张表。
3、如果要连接的表中有列名相同,并且连接的条件就是列名相等,那么ON条件也可以换成USING子句。
4、子查询先执行内部查询,后执行外部查询。
5、子查询需要用()括起来。
6、将子查询放在操作符的右边。
7、子查询通常出现在外层主查询的WHERE子句中,也可以出现在主查询的SELECT子句以及HAVING子句中。
子查询除了可以用在SELECT语句中,还可以用在INSERT、UPDATE及DELETE语句中。
8、ANY或ALL运算符连接的子查询必须与比较运算符同时使用。
项目七:
1、视图是一种数据库对象,是从一个或者多个数据表或视图中导出的虚拟表。
2、视图的结构和数据是对表进行查询的结果。
3、当对通过视图看到的数据进行修改时,相应的基表的数据也会发生变化。
4、数据库中只存储视图定义,而不存放视图对应的数据。
视图中的数据是在视图被使用时动态生成的。
5、视图的作用:
1)视图可以集中数据,满足不同用户对数据的不同要求。
2)视图可以简化复杂查询的结构,方便用户对数据的操作。
3)视图能够对数据提供安全保护。
4)便于组织数据导出。
6、更新视图就是通过视图添加、修改、删除数据。
项目八:
1、索引是一种提高查找速度的机制。
2、在数据库中,索引可以提高数据的查询速度,所以创建的索引越多,查询的速度就越快。
3、全文索引只能在VARCHAR或TEXT类型的列上创建。
4、使用CREATEINDEX语句可以在一个已有表上创建索引,一个表可以创建多个索引。
5、创建索引的方法:
1)CREATEINDEX命令2)ALTERTABLE命令3)createdtable命令中
项目九:
1、字符串是指用单引号或双引号括起来的字符序列。
2、用单引号将表示日期时间的字符串括起来构成。
3、用户变量只能在BEGIN…END语句块中声明。
4、用户变量必须在程序的开头就声明,声明完后,可以在声明它的BEGIN…END语句块中使用该变量,其他语句块中不可以使用它。
5、使用存储过程的优点有:
(1)存储过程在服务器端运行,执行速度快。
(2)存储过程执行一次后,其执行规划就驻留在高速缓冲存储器,在以后的操作中,只需从高速缓冲存储器中调用已编译好的二进制代码执行,提高了系统性能。
(3)确保数据库的安全。
使用存储过程可以完成所有数据库操作,并可通过编程方式控制上述操作对数据库信息访问的权限。
6、在MySQL中,服务器处理语句的时候是以分号为结束标志的。
7、使用DELIMITER命令将MySQL语句的结束标志修改为其他符号。
8、存储过程也可以不加参数,但是名称后面的括号是不可省略的。
9、DELIMITER$$
CREATEPROCEDUREdel_member(INXHCHAR(12))
BEGIN
DELETEFROMXSWHERE学号=XH;
END$$
DELIMITER;
---------以上程序的批处理结束标识是$$。
10、无参的存储过程在调用时括号不能省略。
11、在MYSQL中,CASE语句最后以ENDCASE结束。
12、存储过程创建完后,可以在程序、触发器或者存储过程中被调用,但是都必须使用到CALL语句。
13、调用存储过程时,如果包含输出变量,则该变量前面加@。
14、使用SELECT语句来调用存储函数;
15、存储函数必须包含一条RETURN语句,而这条特殊的SQL语句不允许包含于存储过程中。
16、存储函数不能拥有输出参数,因为存储函数本身就是输出参数;
17、触发器触发的时刻有AFTER和BEFORE,以表示触发器是在激活它的语句之前或之后触发。
18、触发器的触发事件有INSERTUPDATEDELETE。
项目十
1、用户要访问MySQL数据库,首先必须拥有登录到MySQL服务器的用户名和口令。
2、要使用CREATEUSER,必须拥有mysql数据库的全局CREATEUSER权限或INSERT权限。
3、Createuser命令中的用户名格式为:
ser_name@host_name
4、给某用户授予权限可以使用GRANT语句。
使用SHOWGRANTS语句可以查看当前账户拥有什么权限。
5、如果权限授予了一个不存在的用户,MySQL会自动执行一条CREATEUSER语句来创建这个用户,但必须为该用户指定密码。
6、授予数据库权限时ON关键字后面跟“*”和“db_name.*”。
“*”:
表示当前数据库中的所有表;
“db_name.*”:
表示某个数据库中的所有表。
7、在GRANT语法格式中,授予用户权限时ON子句中使用“*.*”,表示所有数据库的所有表。
8、要使用REVOKE,用户必须拥有mysql数据库的全局CREATEUSER权限或UPDATE权限。
9、MySQL有三种保证数据安全的方法:
(1)数据库备份
(2)二进制日志文件(3)数据库复制。
10、使用RENAMEUSER语句来修改一个已经存在的SQL用户的名字时,要使命令立即生效命令:
Flushprivileges;
11、在授予表权限时,ON关键字后面跟表名或视图名。
12、MySQL有三种保证数据安全的方法:
(1)数据库备份:
通过导出数据或者表文件的拷贝来保护数据。
(2)二进制日志文件:
保存更新数据的所有语句。
(3)数据库复制:
MySQL内部复制功能建立在两个或两个以上服务器之间,通过设定它们之间的主从关系来实现的。
其中一个作为主服务器,其他的作为从服务器。
期末练习题
一、选择题
1、在MySQL中,服务器处理语句的结束标志为(D)。
A.GOB.@@C.$$D.分号
2、存储过程创建后,可在程序、触发器或存储过程中使用(C)语句调用。
A.EXECUTEB.CREATEC.CALLD.ERTURN
3、“abc”属于(A)
A、字符串型B、整型C、数字型D、日期和时间类型
4、以下不是MySQL索引类型的是(C)
A、普通索引B、全文索引C、并行索引D、唯一索引
5、以下哪个是正确的创建存储过程的命令(A)
A、CREATEPROCEDUREB、CREATEFUNCTIONC、CREATEDATABASED、CREATETABLE
6、下列关于关系数据库中主键的描述正确的是(D)。
A.表中允许有多个主键B.创建唯一的索引,允许空值
C.只允许以表中第一字段建立D.为标识表中唯一的实体
7、在SQL语言中,用来插入和更新数据的命令是(A)。
A、INSERT,UPDATEB、UPDATE,INSERTC、DELETE,UPDATED、INSERT,SELECT
8、“2016-06-30”属于(D)
A、字符串型B、浮点型C、数字型D、日期和时间类型
9、要查询book表中所有书名中以“计算机”开头的书籍的价格,可用(D)语句。
A.SELECTpriceFROMbookWHEREbook_name=‘计算机*’
B.SELECTpriceFROMbookWHEREbook_nameLIKE‘计算机*’
C.SELECTpriceFROMbookWHEREbook_name=‘计算机%’
D.SELECTpriceFROMbookWHEREbook_nameLIKE‘计算机%’
10、创建数据库的语法格式是(C)
A、SHOWDATABASE;
B、USE数据库名;
C、CREATEDATABASE数据库名;
D、DROPDATABASE数据库名;
11、插入记录的语法格式是(B)
A、insertfrom表名(字段1,字段2,…)values(值1,值2,…);
B、insertinto表名(字段1,字段2,…)values(值1,值2,…);
C、insertwhere表名(字段1,字段2,…)values(值1,值2,…);
D、insertintofrom表名(字段1,字段2,…)values(值1,值2,…);
12、查询tb数据表中id=1的记录,语法格式是(D)
A、select*intotbwhereid=1;
B、select*wheretbwhereid=1;
C、select*deletetbwhereid=1;
D、select*fromtbwhereid=1;
13、MySQL脚本文件的扩展名是(A)。
A、.sqlB、.bakC、.cD、.vbp
14、查询book表中price字段的最大值,查询语句是(A)
A、selectmax(price)frombook;
B、selectmin(price)frombook;
C、selectpricefromminbook;
D、selectpricefrommaxbook;
15、表示职称为副教授同时性别为男的表达式为(B)
A.职称='
副教授'
OR性别='
男'
B.职称='
AND性别='
C.BETWEEN'
AND'
D.IN('
'
)
16、在SELECT语句的SELECT子句中使用关键字(B)可以过滤重复行。
A、UNIONB、DISTINCTC、ALLD、TOP
17、查询xs数据表中的所有数据,并按学号降序排列,语法格式是(C)
A、select*fromxsgroupby学号desc;
B、select*fromxsorderby学号asc
C、select*fromxsorderby学号desc;
D、select*fromxs学号orderby;
18、SQL语言中,删除一个表的命令是(C)。
A.DELETEB.CLEARC.DROPD.REMOVE
19、SQL语言允许使用通配符进行字符串匹配的操作,其中‘%’可以表示(c)。
A、0个字符B、1个字符C、多个字符D、以上都可以
20、(D)是位于用户和操作系统之间的一层数据管理软件,数据库在建立、使用和维护时由其统一管理和控制。
A、DBAB、DBC、DBSD、DBMS
21、查询book表中book_name字段和book_price字段的信息,查询语句是(A)
A、selectbook_name,book_pricefrombook;
B、select*frombook;
C、selectbookfrombook_name,book_price;
D、select*frombookbook_name,book_price;
22、模式查找like'
ba%'
下面(B)结果是可能的。
A.ailiB.baiZZC.bbaD.cca
23、假设“学生”表中有200条记录,语句“SELECT*FROM学生limit5,7;
”实现的查询功能是(C)。
A、查询学生表中的前两条记录B、查询学生表中的5至7条记录
C、查询学生表中第6位学生开始的7条记录D、以上都不对
24、以下关于嵌套查询的描述中错误的是(C)。
A、子查询嵌套在父查询的WHERE子句或HAVING子句中建立父查询的查询条件
B、使用子查询时,必须使用圆括号把子查询括起来
C、嵌套查询的求解方法是由外向里
D、子查询可以用在数据操纵语句中
25、公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是(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、SELECTB、WHEREC、ORDERBYD、HAVING
30、用于求系统日期的函数是(B)。
A.YEAR()B.NOW()C.COUNT()D.SUM()
31、以下不属于数据库对象的是(C)。
A、表B、视图C、字段D、存储过程
32、以下关于视图的描述正确的是(D?
A)。
A、使用视图可以提高数据库的安全性B、使用视图不可以简化数据操作
C、视图是由CREATETABLE语句构造的D、视图和表一样是由数据构成的
33、在T-SQL语言中,修改表结构时,应使用的命令是(C)。
A.UPDATETABLEB.INSERTTABLEC.ALTERTABLED.MODIFY
34、以下哪个数据类型的字段可以设置全文索引(B)。
A.CHARB.TEXTC.INTD.DATETIME
35、查询毕业学校名称与“清华”有关的记录应该用(D)。
A.SELECT*FROM学习经历WHERE毕业学校LIKE’*清华*’
B.SELECT*FROM学习经历WHERE毕业学校=’%清华%’
C.SELECT*FROM学习经历WHERE毕业学校LIKE’?
清华?
’
D.SELECT*FROM学习经历WHERE毕业学校LIKE’%清华%’
36、主键约束是非空约束和(C)约束的组合。
A.检查约束B.NULL约束C.唯一约束D.DEFAULT约束
37、在数据库中存储的是(B)
A、数据B、数据模型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语言中,条件年龄BETWEEN15AND35表示年龄在15至35之间,且(A)。
A.包括15岁和35岁B.不包括15岁和35岁
C.包括15岁但不包括35岁D.包括35岁但不包括15岁
42、创建视图是通过(B)语句实现的。
A、showviewB、createviewC、dropviewD、drop
43、在视图上不能完成的操作是(B)。
A.更新视图数据B.在视图上定义新的基本表
C.在视图上定义新视图D.查询
44、下面(B)语句用于创建数据库表。
A、CREATEDATABASEB、CREATETABLEC、ALTERDATABASED、ALTERTABLE
45、假如有两个表的连接是这样的:
table1INNERJOINtable2其中table1和table2是两个具有公共属性的表,这种连接会生成哪种结果集?
(D)
A.包括table1中的所有行,不包括table2的不匹配行
B.包括table2中的所有行,不包括table1的不匹配行
C.包括和两个表的所有行D.只包括table1和table2满足条件的行
46、在MySQL中,通常使用(A)语句来指定一个已有数据库作为当前工作数据库。
A.USING
B.USED
C.USES
D.USE
47.E-R图提供了表示信息世界中实体、属性和(B)的方法。
A.数据B.联系C.表D.模式
48.E-R图是数据库设计的工具之一,它一般适用于建立数据库的(A)
A.概念模型B.结构模型C.物理模型D.逻辑模型
49.将E-R图转换到关系模式时,实体与联系都可以表示成(B)。
A.属性B.关系
C.键
D.域
50、可用于从表或视图中检索数据的SQL语句是(A)。
A.SELECT语句
B.INSERT语句
C.UPDATE语句
D.DELETE语句
51、SQL语言又称___C_____。
A.结构化定义语言
B.结构化控制语言
C.结构化查询语言
D.结构化操纵语言
52、下列(B)类型不是MySQL中常用的的数据类型。
A.INT
B.VAR
C.TIME
D.CHAR
53、以下哪一个不是MySQL逻辑模型(C)。
A.关系模型
B.网络模型
C.概念模型
D.层次模型
54、以下哪种数据类型的字段可以创建全文索引(C)。
B.CHAR
C.TEXT
D.DATE
二、填空题
1.用二维表结构表示实体以及实体间联系的数据模型称为___关系____数据模型。
2.数据库设计包括概念设计、____逻辑设计____和物理设计。
3.在E-R图中,矩形表示____实体____。
4、MySQL安装成功后,在系统中会默认建立一个____root___用户。
5、在MySQL中,通常使用____null_____来表示一个列没有值或缺值的情形。
6、在CREATE
TABLE语句中,通常使用____primarykey____关键字来指定主键。
7、ORDERBY子句在SELEC
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MYSQL 期末 复习题