简答题
1、数据库设计过程一般包括哪些内容?
需求分析、概念设计、逻辑设计、物理设计、应用开发(系统实施)、系统维护。
2、数据库系统的特点?
数据结构化、数据共享性高,数据独立性强,数据粒度小,统一的管理和控制,独立的数据操作界面。
3、简述数据库的三级模式结构?
内模式也称为物理结构、物理模式,是对数据的物理结构和存储方式的描述
模式也成为整理逻辑结构、逻辑模式,是对数据的整体数据逻辑结构和特征的描述,是现实世界信息内容集合的表示。模式是数据库模式结构的中间层,通过建立数据模型的方法来抽象、表示和处理现实世界中的数据和信息。
外模式也称局部逻辑结构、子模式, 是对数据库用户看到并允许使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图。外模式是三级结构的最外层,是保护数据库安全性的一个有力措施。
4、简述视图的特点?
视图的列可以来自不同的表,是表的抽象和在逻辑意义上建立的新关系。
视图是由表(实表)产生的虚表。
视图的建立和删除不影响表。
对视图数据的修改(增加、删除和更新)直接影响表。
当视图来自多个表时,不允许添加和删除数据行。
5、简述UNION操作符和JOIN操作的区别与联系?
UNION是将相同列的若干跳数据进行合并。
JOIN是将两个或多个表的若干个列进行连接。
二者均是进行连接操作,但是一个是对行进行操作,另一个是对列进行操作。
6、谈谈你对索引的理解,索引越多越好吗?
索引是帮助MySQL高效获取数据的数据结构,可以明显的提高查询效率
分为普通索引,唯一索引,复合索引,聚簇索引。
索引不是越多越好。
7、MySQL如何使用like关键字实现模糊查询,有什么注意事项?
SQL的模式匹配允许你使用“ _ ”匹配任何单个字符,而“%”匹配任意数目字符(包括零个字符)。
在MySQL中,SQL的模式缺省是忽略大小写的。
注意在使用SQL模式时,不能使用 = 或 != ;而使用LIKE或NOTLIKE比较操作符。
%:表示任意个或多个字符。可匹配任意类型和长度的字符。
_:表示任意单个字符。匹配单个任意字符,它常用来限制表达式的字符长度语句:(可以代表一个中文字符)
8、简述limit以及distinct的用法?
limit用于限制查询的数量,常用于分页语句。
limit子句可以被用于强制select语句返回指定的记录数。
limit接受一个或两个数字参数,参数必须是一个整数常量。
distinct一般是用来去除查询结果中的重复记录的,而且这个语句在select、insert、delete和update中只可以在select中使用。
9、MySQL支持哪些外连接,各有什么特点?
外连接有左外连接、右外连接、全连接。
左连接的结果集包括指定的左表全部数据与匹配的右表数据,右表中没匹配的全为空值,关键字 leftjoin
右连接的结果集包含指定的右表全部数据与匹配的左边数据,左边中没匹配的全为空值,关键字rightjoin
全连接返回左右数据表的所有行,关键字fulljoin
10、datetime与timestamp数据类型有什么区别?
相同点:两者都可用来表示YYYY-MM-DDHH:MM:SS[.fraction]类型的日期。
不同点:
两者的存储方式不一样对于TIMESTAMP,它把客户端插入的时间从当前时区转化为UTC(世界标准时间)进行存储。查询时,将其又转化为客户端当前时区进行返回。而对于DATETIME,不做任何改变,基本上是原样输入和输出。
两者所能存储的时间范围不一样
11、你怎样理解having子句与where子句之间的区别?
where不能放在GROUPBY后面
HAVING是跟GROUPBY连在一起用的,放在GROUPBY后面,此时的作用相当于WHERE
WHERE后面的条件中不能有聚集函数,比如SUM(),AVG()等,而HAVING可以
12、忘记MySQL管理员root的密码如何解决?写出步骤和指令
停止my