本帖最后由 xuanyuanyilu 于 2010-11-29 16:53:19 编辑

解决方案 »

  1.   

    你是想在过程中处理吧?
    定义游标,来实现更新和锁表
    如:
    CURSOR cur IS 
    SELECT m.*,s.* FROM (
      SELECT * FROM TBL_MAIN WHERE DEAL_FLAG = '0' and rownum<1001
      )m  
    , TBL_SUB s
    where m.id=s.id for update of s.id ;
    ....
    ....
      UPDATE ...FROM ... WHERE CURRENT OF cur;
    ....
    ....
      

  2.   

    你可以尝试不使用子查询,直接做自然连接,然后做for update 这样可以达到锁两个表的目的,你可以尝试调整你的sql
      

  3.   


    游标这个我真不太熟悉,不知道在IBATIS中是否可行,也不知道效率怎么样