oracle执行多条语句临时变量问题

unm 2009-11-04 11:23:56
我多个sql语句想执行,中间还带变量的,请问这个直接执行可以吗?或者用存储过程?

DECLARE mKeyID INT;
begin
update hr_leave set NAME= '11' ,STATUS= '1' ,ID= '1' ,DEPARTMENT= '11' ,TIME= '11' ,EMPLOYEE= '11' where id='1';
mKeyID := 1;
update hr_leave_work set TIME= 'ggg' ,CONTENT= 'ffff' ,ID= '1' ,LID=@mKeyID,TITLE= 'ttt' where ID='1';
update hr_leave_work set TIME= '33' ,CONTENT= '3' ,ID= '3' ,LID=@mKeyID,TITLE= '3' where ID='3';
end;

或者如下语句:
DECLARE mKeyID INT;
begin
insert into hr_leave(id,name,age)values(seq_leavve_work.nextval,'aa',22);
select seq_leave_work.currval into mKeyID from dual;
update hr_leave_work set TIME= 'ggg' ,CONTENT= 'ffff' ,ID= '1' ,LID=@mKeyID,TITLE= 'ttt' where ID='1';
update hr_leave_work set TIME= '33' ,CONTENT= '3' ,ID= '3' ,LID=@mKeyID,TITLE= '3' where ID='3';
end;


就是我想第一个语句插入,获取最新值作为后面语句的键值,执行不通过,哪位给看看
...全文
138 点赞 收藏 2
写回复
2 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
inthirties 2009-11-05
试试returning into
回复
liusong_china 2009-11-05
oracle不用@,
把@mKeyID替换成mKeyID。。。。
回复
相关推荐
发帖
基础和管理
创建于2007-09-28

1.7w+

社区成员

Oracle 基础和管理
申请成为版主
帖子事件
创建了帖子
2009-11-04 11:23
社区公告
暂无公告