oracle 更新语句死锁问题?????
UPDATE mem_card_new a set bj=concat(bj,'," + brid + "') where exists(select 1 from brflag b where instr(substr(b.idsvalue, 1, length(b.idsvalue) - 1), concat('''', concat(wsid, ''''))) > 0 and b.tablename='mem_card_new' and b.brid='" + brid + "' and nvl(instr(a.bj,'" + brid + "'),0)=0) and wsid in(select a.wsid from EXP_TEMPCARD a inner join mem_card_new b on a.wsid=b.wsid and a.cent=b.mem_jf_amt and a.brid='" + brid + "')
我是用的WEB SERVICE处理执行这个SQL语句的,这个WEB SERVICE调用的比较频繁,每2分钟就会有20多个请求,经常会死锁,各位有没有什么好的办法去解决这个死锁的问题呢?
------解决方案--------------------为什么不在程序里面通过一些机制来实现呢。比如单例模式,或者排队。。。