我在程序中使用下列语句:
m_pOracleConnection->Execute("lock table tbl_student in exclusive mode",&RecordsAffected,adCmdText);
想锁住oracle数据中的表 tbl_student,可是锁不住,这是为什么?
有什么方法可以锁住整张表,到所有动作,比如查询,插入等结束后再解锁???

解决方案 »

  1.   

    直接调用:
    set transaction isolation level serializable;
    这样差不多能达到你想要的效果。
      

  2.   

    能给点代码吗?这个我不会用,而且在oracle上也适用吗?
      

  3.   

    select * from tbl_student for update;
    这样就可以了
      

  4.   

    select * from table_a for update:你锁住以后,别人要是要更新这个表,就得一直等到你用commit或rollback解锁,
    select * from table_a for update nowait;你锁住以后,别人要是要更新这个表,会直接抛异常,立马返回