oracle存储过程中update语句一直在执行中,无法更新完成

入参in_yf是月份,格式如:“201501”,在log_insert表中month字段类型是varchar2(6),这个表很小(五行数据),但是执行这个过程,10分钟后... 入参in_yf是月份,格式如:“201501”,在log_insert表中month字段类型是varchar2(6),这个表很小(五行数据),但是执行这个过程,10分钟后还在执行,也不报错。不知道哪里出问题了,求教! 展开
 我来答
育知同创教育
2016-02-05 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部
可能这个表被别的用户锁了;

select sess.sid,
sess.serial#,
lo.oracle_username,
lo.os_user_name,
ao.object_name,
lo.locked_mode
from v$locked_object lo, dba_objects ao, v$session sess
where ao.object_id = lo.object_id
and lo.session_id = sess.sid;

--杀掉会话
alter system kill session 'sid,serial#';
仙戈雅3n
2015-04-14 · TA获得超过5790个赞
知道大有可为答主
回答量:2398
采纳率:75%
帮助的人:892万
展开全部
尝试更改sql脚本如下所示:
create or replace procedure  test_wz(in_yf in varchar2)
is
v_yf varchar(50);
begin
   v_yf:=in_yf;
   update log_insert  -- 不要用别名
   set zfsjdc_date=sysdate
   where month=v_yf and unusual_flag='0';
   -- 去掉commit;因为你不是在Oracle SQL PLUS环境下执行。
end test_wz;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
psbc2011
2015-04-14 · 超过90用户采纳过TA的回答
知道小有建树答主
回答量:247
采纳率:0%
帮助的人:142万
展开全部
表锁了,应该是有别的程序操作了这条记录,没有提交事物。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式