数据库
左高右低
Angry Crow Takes Flight
展开
-
sql语句的优化
一、为什么要对SQL进行优化 我们开发项目上线初期,由于业务数据量相对较少,一些SQL的执行效率对程序运行效率的影响不太明显,而开发和运维人员也无法判断SQL对程序的运行效率有多大,故很少针对SQL进行专门的优化,而随着时间的积累,业务数据量的增多,SQL的执行效率对程序的运行效率的影响逐渐增大,此时对SQL的优化就很有必要。 二、SQL优化的一些方法 1.对查询进行优化,应尽量避免全表扫描,首先...原创 2019-10-24 21:56:54 · 188 阅读 · 0 评论 -
三种mysql存储引擎
数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还可以 获得特定的功能。现在许多不同的数据库管理系统都支持多种不同的数据引擎。MySql的核心就是存储引擎。 如果要想查看数据库默认使用哪个引擎,可以通过使用命令: SHOW VARIABLES LIKE 'sto...转载 2019-03-07 18:37:42 · 109 阅读 · 0 评论 -
数据库事务的四大特性和隔离级别
最近经常会被问到这个问题,以便自己日后查漏补缺。 一.事务的概念以及事务的四大特性 事务(Transaction):简单的说就是对数据库进行的一个完整的操作,这个操作要么全部成功,要么全部失败,不能够被分割。 事务的四大特性(ACID): 原子性(Atomicity): 不可分割,要么全部执行,要么全部失败回滚,失败回滚后,数据库的状态与改事务执行之前的数据库状态相同。 一致性(Cons...原创 2019-08-22 22:45:37 · 86 阅读 · 0 评论 -
Mysql索引相关
为什么要用索引? 通过创建唯一性索引可以保证数据库中的每一条数据的唯一性。 主要原因可以大大加快数据的读取速度。(主要原因) 帮助服务器避免排序和零时表 将随机IO变为顺序IO 可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义。 索引那么多优点,为什么不对表中的每一个列创建索引呢? 当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,这样就降低了数据的维护速度。 索引...原创 2019-09-02 22:56:16 · 82 阅读 · 0 评论 -
数据库的范式
当我们想要设计出合理的关系型数据库时,需要遵从不同的规范要求,这些不同的规范要求就被称为范式。各种范式呈递次规范,越高的范式数据库冗余程度越小。目前关系数据库有六种范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴斯-科德范式(BCNF)、第四范式(4NF)和第五范式(5NF,又称完美范式)。但是在实际的使用中,我们只需要了解前三个范式,也就是我们常说的“数据库三范式”。 第一范...原创 2019-09-05 23:05:41 · 240 阅读 · 0 评论 -
Mysql数据库多表联合查询
表连接的方式 内连接 外连接 自连接 我们接下来将对这三种连接进行详细的介绍。 先准备两张表 Student表 字段 解释 ID 学号 name 姓名 collegeID 校园ID college表 字段 解释 collegeId 学院ID(主键) collegeName 学院名 内连接 内连接就是表间的主键与外键相连,只取得键值一致的,可以...原创 2019-09-06 23:44:47 · 1723 阅读 · 0 评论 -
数据库连接池
数据库连接池 数据库连接池(Connection pooling)是程序启动时建立足够的数据库连接,并将这些连接组成一个连接池,由程序动态的对池中的连接进行申请、使用、释放; (1)程序初始化时创建连接池 (2)使用时向连接池申请可用连接 (3)使用完毕,将连接返还给连接池 (4)程序退出时,断开所有的连接,并释放资源 创建数据库连接池 DBCP : Apache组织下面的一个开源...原创 2019-09-09 23:39:16 · 222 阅读 · 0 评论