Oracle与Mysql创建存储过程

<1>Oracle如下:
create or replace procedure aa //创建无参存储过程
is
begin
for i in 1…100000 loop //定义循环
insert into jz(jz_object_id,cid,customer_id,company_name,jz_price,jz_ability,chance_theme) values
(jz_seq.nextval,1,12,‘xxxx’,30000.00,‘有力竞争’,‘java’); //循环插入10万数据
end loop; //结束循环
commit;
end; //退出存储过程
begin
aa(); //调用存储过程
end;
<2>Mysql如下:
delimiter // #定义标识符为双斜杠
create procedure a() #创建无参存储过程
begin
declare i int; #申明变量
declare tempi varchar(6); #申明变量
set i=0; #变量赋值
while i<100000 DO #结束循环的条件
if i<10 THEN
set tempi=concat(‘0000’,i);
elseif i<100 THEN
set tempi=concat(‘000’,i);
elseif i<1000 THEN
set tempi=concat(‘00’,i);
elseif i<10000 THEN
set tempi=concat(‘0’,i);
else
set tempi=concat(i);
end if; #结束if循环
insert into testinsertdatas(number) values(tempi);
set i=i+1;
end while; #结束while循环
end // #结束定义语句
delimiter ;
call a(); #调用存储过程
drop procedure if exists a; #执行完删除存储过程
<3>注意存储过程的创建到结束是一体执行的,否则单独执行会报错。

猜你喜欢

转载自blog.csdn.net/weixin_43686722/article/details/84193702