create procedure updatedemo (ageparam IN number) as begin update demo set age = ageparam; commit; end; /
begin updatedemo(20); end; /
3.1创建存储过程
create or replace procedure InsertDemo(id in char,name in char default '路人',age in char default '30',sex in char) as begin insert into demo values(id,name,age,sex); commit; end; /
3.2、运行该存储过程
begin InsertDemo('5','孙尚香',null,'female'); end; /
这里我出现了一个问题,就是我的表的字段是id,name,sex,age;但是我定义的存储过程是id,
name,age,sex;最后两个字段的位置跟表结构不一样;插入的时候,插入的核心是存储过程里的
insert into demo values(id,name,age,sex);
这句话,然后传参的顺序丝毫不会影响到insert表的顺醋,插入式,系统会将你的变量id,name
age,sex插入到字段id,name,age,sex中,这里要注意,前4个是参数,后4个是字段;
当存储过程定义了默认值后,表也定义了默认值,表的默认值优先级高于存储过程;