数据库系列
lwthad
活到老学到老|知耻而后勇
展开
-
数据库系列之——事务隔离的可重复读
简介:事务是一条或多条数据库操作的集合,在事务中的操作,要么都执行修改,要么都不执行。事务的四大性质即ACIDA(atomicity)原子性:一个事务的执行被视为一个不可分割的最小单元。事务里面的操作,要么全部成功执行,要么全部失败回滚,不可以只执行其中的一部分。C(consistency)一致性:一个事务的执行不应该破坏数据库的完整性约束。I(isolation)隔离性:事务之...原创 2019-01-13 01:15:32 · 1487 阅读 · 0 评论 -
数据库系列之——char and varchar
区别:一、所占空间char的长度指定后不可变,且是立即占用指定的空间;varchar的长度可变,占用空间与存入数据大小有关。显而易见,varchar比char节省空间。 举例:定义 char(10) 和 varchar(10),存入数据 'hello',此时,char所占的空间为10个字符(后面都是空格),varchar则只占5。另外,MySQL中 char...原创 2019-01-14 14:38:16 · 162 阅读 · 0 评论 -
数据库系列之——事务隔离的读已提交
上次讲了事务隔离级别中的 可重复读,这次谈一谈 读已提交。可重复读的实现原理是事务1在执行读操作的时候对检索的数据行加S锁(基于事务),直到事务1提交后,才释放该锁,所以其他事务不能对事务1操作的数据行进行修改。这也就是可重复读读已提交和上面的过程很相似,不过,加的S锁是基于查询的,查询操作一旦执行完,立刻就释放S锁,所以在事务a没有提交之前,其他事物有可能会修改这些数据...原创 2019-01-14 15:44:36 · 1191 阅读 · 1 评论 -
数据库系列之——Mybatis_Generator(逆向工程)
开发工具:idea2018.1jdk:1.8 x64maven:3.5.4原创 2019-01-19 15:23:51 · 202 阅读 · 0 评论 -
数据库系列之——事务隔离的可串行化
这次谈一谈,可串行化可重复读实现了读取前后数据内容一致,但是产生了数据条目不一致(幻读),可串行化解决了这个问题,串行化是最严格的事物隔离级别:事物a 执行读写操作时,会锁定检索的数据行范围(范围锁),这种锁会阻止其他事物在本范围内的一切操作,只有事物a执行完毕,提交事物后,才会释放范围锁,这样就避免了幻读。但是,实际项目中,这个级别的隔离很少用,因为并发性能低,容...原创 2019-01-14 16:33:29 · 2383 阅读 · 0 评论 -
数据库系列之——mongoDB的基础操作
前言:Mongodb,基于分布式文档存储的数据库,由C++语言编写,旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSQL数据库中比较热门的一种。它在许多场景下可用于替代传统的关系型数据库或键/值存储方式。use admin 切换到admin数据库//创建用户db.createUser({ user...原创 2019-01-25 23:05:56 · 110 阅读 · 1 评论