PLSQL总结——15.DML事务
2012-02-15 16:21
155 查看
/* create table EMPLOYEE ( employee_number NUMBER, employee_name VARCHAR2(30), salary NUMBER(7,2), department_id NUMBER ) */ declare /*显示表记录*/ procedure show_rec is cursor c1 is select * from employee; begin for rec in c1 loop /*假如第一条,输出头*/ if c1%rowcount = 1 then dbms_output.put_line('--------------------------------------------------'); dbms_output.put_line('employee_number|employee_name|salary|department_id'); end if; dbms_output.put_line(rpad(rec.employee_number, 15, ' ') || '|' || rpad(rec.employee_name, 13, ' ') || '|' || rpad(rec.salary, 6, ' ') || '|' || rpad(rec.department_id, 13, ' ')); end loop; dbms_output.put_line('--------------------------------------------------'); end show_rec; begin dbms_output.put_line('before update record...'); show_rec; --显示表记录 /*插入多条记录,复制多一倍数据*/ insert into employee select * from employee; savepoint a; --保存点 /*删除表的重复记录*/ delete employee where rowid not in (select max(rowid) from employee group by employee_number, employee_name, salary, department_id); dbms_output.put_line('delete count : ' || sql%rowcount); dbms_output.put_line(''); /*更新表,让工资变为1000*/ <<update_block>> declare employee_rec employee%rowtype; update_row pls_integer := 0; cursor c1 is select * from employee for update; begin for rec in c1 loop employee_rec := rec; employee_rec.salary := 1000; update employee set row = employee_rec where current of c1; update_row := update_row + sql%rowcount; end loop; dbms_output.put_line(update_row || ' records were updated!'); dbms_output.put_line(''); end update_block; commit; dbms_output.put_line('after update record...'); show_rec; --显示表记录 exception when others then rollback to a; --返回保存点a end;
相关文章推荐
- PLSQL总结——16.自治事务
- PLSQL中递归树的总结
- 从银行转账失败到分布式事务:总结与思考
- 事务管理总结
- 从银行转账失败到分布式事务:总结与思考
- 学习总结---INNODB 事务并发
- .net中的4种事务总结-4
- J2EE事务并发控制策略总结
- TransactionProxyFactoryBean总结并测试事务异常
- 对Spring 容器管理事务支持的总结
- SQL事务处理语句总结
- spring事务配置的学习总结
- Spring事务总结
- Mysql学习总结(45)——Mysql视图和事务
- 总结PLSQL的快捷键以及使用技巧
- 一些总结application和事务
- javaweb学习总结(三十八)——事务
- Oracle之PLSQL总结
- 机房收费系统总结(一)——事务