PL/SQL】DELETE IN PROCEDURE Analysis & Example | oracle数据库: 用procedure删除数据的案例分析

/* procedure practice */
--display original table 
select * from regions;
drop sequence s_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;
/

create sequence s_regions
    start with 12
    increment by 1
    cache 2;

execute add_ceshi (s_regions.nextval, 'wei');
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;

create or replace procedure de_ceshi(
    p_id regions.region_id%type) IS
begin
    delete from regions
    where regions.region_id > p_id;
end de_ceshi;
/


--test 0/ negative value
/*
execute de_ceshi(-2);
select * from regions;
*/

execute de_ceshi(9);
select * from regions;

OUTPUT

REGION_ID REGION_NAME


     1 Europe                   
     2 Americas                 
     3 Asia                     
     4 Middle East and Africa   

Sequence S_REGIONS dropped.

Procedure ADD_CESHI compiled

Sequence S_REGIONS created.

PL/SQL procedure successfully completed.

PL/SQL procedure successfully completed.

PL/SQL procedure successfully completed.

PL/SQL procedure successfully completed.

REGION_ID REGION_NAME


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

8 rows selected.

Procedure DE_CESHI compiled

PL/SQL procedure successfully completed.

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、付费专栏及课程。

余额充值