2 yuqiong968 yuqiong968 于 2013.09.04 13:25 提问

存储过程同时Update 多张表问题

如下存储过程写法对吗?执行成功,没有报错,但是实际查询数据时发现数据并没有被更新,求解答,问题出在哪里呢?
create or replace procedure emp_role_disable Is

Begin
Update c_userxrole Set expiration_date=Sysdate+14,lm_user='autocim' ,lm_time =systimestamp Where upper(userid) In (Select emp_data.emp_no From emp_data Where trans_date Is Not Null);
Update c_usr_user Set is_enable=0,is_quit=1 ,LM_USER='CIM',disable_date=Sysdate Where is_enable=1 And is_quit=0 And upper(userid) Not In (Select emp_data.emp_no From emp_data);

end emp_role_disable;

说明,两个sql 拉出来直接在plsql上执行是Ok的

存储过程执行后,数据没有变化;然后我定义了一个job,周期执行这个存储过程。job执行成功,数据也更新了。。问题:存储过程不能手动执行吗?就是按F8执行,一定要其它触发执行?

1个回答

flyed2008
flyed2008   2013.09.04 17:22
已采纳

1.存储过程应该是没有问题
2,按F8是不可以执行的。可以手工执行的可以使用exec命令执行

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!