事务,已经是烂谷子的话题了,我又不是之前玩spring的那个小白痴了,事务,可笑呢,哥我熟到掉渣了;
事务简单说就是一起递交,一起回滚,保证数据的完整性;
oracle的事务就三个关键字: begin transaction(事务开始), rollback(回滚) ,commit(结束事务);
事务的隔离级别为四个,分别是为未递交读,递交读,不重复读,串行化;
oracle设置的隔离级别为三个级别,分别是递交读(read committed),串行化(serializable),只读(read only);
设置语法:set transaction isolattion level 隔离级别;
锁:保证数据的完整性的数据库一个特性,并且他是自动维护的,无需我们担心,分类:共享锁,独占锁;
系统变化号(SCN):他是类似于hibernate乐观锁的机制,每修改一次版本号相加;
性能提升:
SQL的子查询优化: 使用exists代替in, not exists代替not in, 语法:where exists(子查询);
表链接查询: 一般优化表都是建立索引,当表连接的链接列,必须都有索引,不然速度一样会下降;
复合索引: 复合索引的引发条件是 where...and.. ,必须复合所有的列都用上,才能发动;