首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

怎样防止表锁定哦?解决办法

2012-06-14 
怎样防止表锁定哦?我在java程序中执行beginupdate t_12580_bus_ticketset state1 where id in (SELECT

怎样防止表锁定哦?
我在java程序中执行
begin
update t_12580_bus_ticket set state='1' where id in (SELECT id FROM t_12580_bus_ticket 
WHERE to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') < to_char(to_date(create_time, 'yyyy-mm-dd hh24:mi:ss')+numtodsinterval(10,'minute'),'yyyy-mm-dd hh24:mi:ss') 
);
commit;
end

后,总是把t_12580_bus_ticket 表给锁定了,请问下,是不是这个sql写的有问题哦?



[解决办法]
begin
update t_12580_bus_ticket
set state = '1'
where to_char(sysdate, 'yyyy-mm-dd hh24:mi:ss') <
to_char(to_date(create_time, 'yyyy-mm-dd hh24:mi:ss') +
numtodsinterval(10, 'minute'),
'yyyy-mm-dd hh24:mi:ss');
commit;
end

这样些和你写的难道不是一样的,为什么你要套一层啊~~
[解决办法]
语句没什么,锁定的原因应该是其他原因造成的...
[解决办法]
并发太厉害锁表也是正常的

热点排行