【PL/SQL】 ROLLBACK WHEN EXECUTE A PROCEDURE Analysis & Output | oracle数据库: 回滚案例的输出与分析

/* procedure practice */
--display original table 
select * from regions;

--ceshi procedure
create or replace procedure add_ceshi(
    p_id regions.region_id%type,
    p_name regions.region_name%type) IS

begin
    insert into regions
    values (p_id, p_name);  
end add_ceshi;
/

drop sequence s_regions;
create sequence s_regions
    start with 12
    increment by 1
    cache 2;
    
execute add_ceshi (11, 'zhao');
select * from regions;

rollback;
/
select * from regions;

execute add_ceshi (s_regions.nextval, 'wei');
select * from regions;

rollback;
/
select * from regions;

execute add_ceshi (s_regions.nextval, 'qi');    
execute add_ceshi (s_regions.nextval, 'yan');
execute add_ceshi (s_regions.nextval, 'han');

--display table after add-ceshi
select * from regions;

select * from regions;

--manual delete
delete from regions
where region_id > 9;

select * from regions;

OUTPUT:

REGION_ID REGION_NAME


     1 Europe                   
     2 Americas                 
     3 Asia                     
     4 Middle East and Africa   

Procedure ADD_CESHI compiled

Sequence S_REGIONS dropped.

Sequence S_REGIONS created.

PL/SQL procedure successfully completed.

REGION_ID REGION_NAME


     1 Europe                   
     2 Americas                 
     3 Asia                     
     4 Middle East and Africa   
    11 zhao                     

Rollback complete.

REGION_ID REGION_NAME


     1 Europe                   
     2 Americas                 
     3 Asia                     
     4 Middle East and Africa   

PL/SQL procedure successfully completed.

REGION_ID REGION_NAME


     1 Europe                   
     2 Americas                 
     3 Asia                     
     4 Middle East and Africa   
    12 wei                      

Rollback complete.

REGION_ID REGION_NAME


     1 Europe                   
     2 Americas                 
     3 Asia                     
     4 Middle East and Africa   

PL/SQL procedure successfully completed.

PL/SQL procedure successfully completed.

PL/SQL procedure successfully completed.

REGION_ID REGION_NAME


     1 Europe                   
     2 Americas                 
     3 Asia                     
     4 Middle East and Africa   
    13 qi                       
    14 yan                      
    15 han                      

7 rows selected.

REGION_ID REGION_NAME


     1 Europe                   
     2 Americas                 
     3 Asia                     
     4 Middle East and Africa   
    13 qi                       
    14 yan                      
    15 han                      

7 rows selected.

3 rows deleted.

REGION_ID REGION_NAME


     1 Europe                   
     2 Americas                 
     3 Asia                     
     4 Middle East and Africa   
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值