oracle学习第五天

事务

访问并可能更新数据库中各种数据项的一个程序执行单元
可以理解为一个或一组不可分割的操作

例如,修改一条记录,就是一个事务,修改记录是一个操作(一个sql).
转账是一个事务,两个操作

oracle学习第五天_第1张图片

事务特性
oracle学习第五天_第2张图片
原子性:一个事务中的所有操作要么都执行成功,要么都失败
如小明给小花转账,小明转300,账户余额减300,小花余额加300(事务执行成功)
如果小明转账后,而小花余额未增加,事务会回滚,会把钱返回到小明账户(事务未执行成功)
oracle学习第五天_第3张图片
oracle学习第五天_第4张图片

oracle学习第五天_第5张图片
如果事务没有提交,是可以回滚的

oracle学习第五天_第6张图片

数据库优化之索引

索引的作用:提高查询效率,类似书的目录

当我们建表的时候,oracle会自动给我们添加索引
不是所有的列都添加索引,一般实在主键这一列添加索引

索引不能过多,由于索引需要数据库维护,会消耗数据库资源,降低数据库性能

1.建立索引的字段越多,那数据量大的时候,文件就会越大,查找数据就会变慢.这是最显著的问题.
2.一个索引会在 update 或 insert 时增加一次 I/O,对于操作系统底层来说是非常损耗性能的

可以在适当的列上创建合适的索引

你可能感兴趣的:(oracle)