- 博客(13)
- 收藏
- 关注
原创 存储引擎选择
存储引擎选择在选择存储引擎时,应根据应用系统的特点选择合适的存储引擎。对于复杂的应用系统,还可以根据实际情况选择多种存储引擎进行组合。InnoDB:是MySQL默认的存储引擎,支持事务,外键。如果应用对事务的完整性有比较高的要求,在并发条件下要求数据一致性,数据操作除了插入和查询之外,还包含很多更新删除操作,那么innoDB存储引擎是比较合适的选择。MyISAM:如果应用是以读操作和插入操作为主,只有很少的更新和删除操作,并且对事务的完整性,并发性要求不是很高,那么选择这个存储引擎是非常合适
2022-07-12 08:00:06
671
原创 MyISAM和Memory
MyISAM和Memory(可以被nosql的两个存储所替代)MyISAM特点是MySQL 最早的存储引擎之一特点不支持事务,不支持外键支持表锁,不支持行锁(要锁只能锁一张表)访问速度快文件xxx.sdi:存储表结构信息xxx.MYD:存储数据xxx.MYI:存储索引Memory介绍Memory引擎的表数据是存储在内存当中的,由于硬件问题或断电问题,只能将这些表作为临时表或缓存使用。使用场景用于查找或者是...
2022-07-12 07:55:33
530
原创 存储引擎InnoDB
存储引擎InnoDB介绍InnoDB是一种兼顾可靠性和高性能的通用存储引擎,在MySQL5.5之后,InnoDB是默认的存储引擎。特点DML(增删改)操作遵循ACID(事务的四大特性)模型,支持事务;行级锁,提高并发访问性能;支持外键 FOREIGN KEY 约束,保证数据的完整性和正确性;文件xxx.ibd:xxx代表的是表名,innoDB引擎的每张表都会对应一个表空间文件,存储该表的表结构(frm,sdi),数据和索引。参数:innDB_file_per_table优点:可以
2022-07-12 07:53:11
73
原创 并发事务问题以及设置隔离级别
并发事务问题 脏读:一个事务读到另一个事务还没提交的数据。-- 例如B事务读取到了A事务还没提交的数据。 不可重复读:一个事务先后读取同一条记录,但两次读取的数据不同,称之为不可重复读。 幻读:一个事务按照条件查询数据时,没有对应的数据行,但是插入数据时,又发现这行数据已经存在,好像出现了一个幻影一样。-- 大致流程A查询,B插入,A插入,报错,回滚,A查询.......-- 通常在解决了不可重复读后出现事务隔离级别 脏读会不会出现 不可重复读会不...
2022-07-07 07:55:45
452
原创 事务的四大特性
事务的四大特性原子性(Atomicity):事务是不可分割的最小操作单元,要么全部成功,要么全部失败。一致性(Consistency):事务完成时,必须是使所有的数据保持一致状态。隔离性(Isolation):数据库系统提供的隔离机制,保证事务在不受外部并发操作影响的独立环境下运行。持久性(Durability):事务一旦提交或回滚,它对数据库中的数据改变是永久的。...
2022-07-06 07:58:40
164
原创 事务的简介
事务简介事务是一组操作的集合,他是一个不可分割的工作单位,事务会把所有的操作作为一个整体一起向系统提交或撤销操作请求,即这些操作要么同时成功,要么同时失败。事务中的操作全执行成功后才会提交事务。如果执行事务过程中出现了异常,就要事务回滚(指把临时修改的数据给恢复过去)。默认Mysql的事务是自动提交的,也就是说,当执行了一条DML语句,Mysql会立即隐式的提交事务。事务操作-- -----------事务操作---------------- -----------数据准备----
2022-07-06 07:57:14
198
原创 练习及总结
1.查询员工姓名,年龄,职位,部门(隐式内连接)select e.name,e.age,e.job,d.name from emp e ,dept d where e.deot_id=d.id;2.查询年龄小于30的员工姓名,年龄,职位,部门(显式内连接)select e.name,e.age,e.job,d.name from emp e inner join dept d on e.deot_id=d.id where e.age<30;-- on后面是连接条件 where后面是查询条件,
2022-07-05 07:55:40
1349
原创 子查询(select嵌套)
-- --------------------------------------- 子查询(select嵌套)-- SELECT *FROM t1 WHERE column1=(SELECT column1 FROM t2);-- --------------------------------------- 标量子查询:子查询结果为单个值 (数字,字符串,日期等)-- 1.查询销售部部门idselect id from dept where name = '销售部';-- 2.查询.
2022-07-02 08:00:17
4401
原创 子查询-列子查询
-- 列子查询:子查询返回的结果只有一列(常用操作符:IN,NOT IN, ANY, SOME,ALL)-- IN 在指定的集合范围内多选1-- NOT IN 不在指定的集合范围之内-- ANY 子查询返回列表中,有一个条件满足即可-- SOME 与ANY一样,能用SOME的地方均可用ANY-- ALL 子查询列表中所有值都必须满足-- 1.查询销售部和市场部的部门idselect id from dept where name = '销售部' or name = '市场部';--
2022-07-01 08:02:55
510
原创 多表查询-外连接
-- 外连接-- 左外 select 字段列表 from 表1 left 【outer】 join 表2 on 条件...;-- 查询student的所有数据和对应的课程数据select s.*, c.name from student s left join course c on s.id=c.id;-- 右外 select 字段列表 from 表1 right 【outer】 join 表2 on 条件...;-- 查询course的所有数据和对应的学生数据sele..
2022-06-29 21:05:57
84
原创 多表查询-内连接
-- 多表查询select * from student , course;-- 查询这两个表所有的元素组合(笛卡尔积)select * from student , course where student.id = course.id;-- 消除笛卡尔积,判断这两个表中有关联的元素相等(这里是课程id和学生id相等)--多表查询分类连接查询内连接:A和B交集的部分外连接:左外连接,查询左表所有数据,以及两张表交集部分的数据 右外连接,查询右表所有数据,以及...
2022-06-29 21:05:05
440
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人