5.0、事务处理
范例:创建一个只包含10部门雇员的一张临时表
CREATE TABLE emp10 AS SELECT * FROM emp WHERE deptno=10; |
范例:删除emp10表中的7782雇员
DELETE FROM emp10 WHERE empno=7782; |
从当前的窗口中发现,此数据已经被删除了。
但是,现在开启第二个窗口,在此查询emp10表,观察效果,发现7782的数据还存在,证明没有删除,实际上这就是Oracle中的事务处理概念。
事务处理:所谓的事务处理就是保证数据操作的完整性,所有的操作要么同时成功,要么同时失败。
在Oracle中对于每一个连接到数据库的窗口(sqlplus、sqlplusw)连接之后实际上都会与数据库的连接建立一个session(会话),即:每一个连接到数据库上的用户都表示创建了一个session。
一个session对数据库所做的修改,不会立刻反映到数据库的真实数据之上,是允许回滚的,当一个session提交所有的操作之后,数据库才真正的作出修改。
在数据库的操作中提供了以下的两个主要命令完成事务的处理:
·提交事务:commit;
·回滚事务:rollback;
|- 如果数据已经提交了,则肯定无法回滚
在Oracle中关于事务处理上也会存在一种死锁的概念。
·一个session如果更新了数据库中的记录,其他session是无法立刻更新的,要等待对方提交之后才允许更新。
总结
1、多表查询,要注意产生的笛卡尔积
2、分组统计,所有的统计函数只能在分组语句中使用
3、子查询:子查询可以在任意的位置上编写,多表查询、子查询、分组统计一起完成复杂查询
4、数据库的增加、修改、删除
5、了解一下事务的处理方式,主要是commit、rollback
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/21817401/viewspace-621949/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/21817401/viewspace-621949/