• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 軟件測試中oracle鎖表

    發表于:2010-06-01來源:作者:點擊數: 標簽:軟件測試oracleOracleORACLE
    軟件測試中oracle鎖表 lock table BO_ThreeYearInvestProgramHis in exclusive mode nowait; 一,鎖 為了防止用戶在同一時間并發地訪問和修改資源,ORACLE使用不同類型的鎖控制對數據的并發訪問,以防止用戶之間出現破壞性的交互操作 ,oracle 為處理事務自

    軟件測試中oracle鎖表

    lock table BO_ThreeYearInvestProgramHis in exclusive mode nowait;

    一,鎖

    為了防止用戶在同一時間并發地訪問和修改資源,ORACLE使用不同類型的鎖控制對數據的并發訪問,以防止用戶之間出現破壞性的交互操作
    ,oracle 為處理事務自動鎖定資源。

    鎖在SQL語句開始它們與數據的相互作用時獲得,并在事務的整個過程中有效

    oracle9i使用兩種鎖模式:

    .獨占模式(排他):不允許其他任何并發會話以任何方式共享鎖定的資源,修改數據時需要這種鎖。

    .共享模式:允許對同一塊數據的并發讀訪問。在更改數據時,上升為獨占模式

    一)行級鎖

    insert update delete 隱式加行鎖(排他)

    select ... for update 顯示加行鎖(共享)

    select ...for update 用于顯示鎖定將要更新的數據行,防止其他用戶在更新之前操作此行

    如:select * from emp where deptno=30 for update

    update emp set ename='Joke' where empno=7499;

    在鎖釋放之前,其他用戶不可以對鎖定的數據行進行(修改,刪除)操作,查詢可以

    假如有其他用戶要鎖定同一資源:可以使用wait 子句對鎖的等待時間控制

    如: 在另一用戶中:select * from emp where deptno=30 for update wait 2 (等待2秒

    如2秒鐘還未釋放資源,系統將會給出提示信息

    二)表級鎖

    共享模式(in share mode)

    共享更新模式(in share update mode)

    排他鎖模式

    鎖定表的通用語法:

    lock table 表名 in <share or share update or exclusive mode>;

    1) 共享模式

    不允許其他用戶插入,更新和刪除行,多個用戶可以同時在同一表上設置共享鎖,這樣設置鎖的多個用戶都只能執行查詢

    lock table emp in share mode;

    2)共享更新模式(in share update mode)

    允許多個用戶同時鎖定表的不同行, 允許其他用戶進行DML(insert update delete select)操作 , 除了已鎖定的行

    如: lock table emp in share update mode;

    select * from emp where deptno=30 for update //鎖定的行

    其他用戶不能delete ,update 部門30的雇員信息

    其他用戶可以查看鎖定的行: select * from emp where deptno=30

    3)排他鎖模式(限制性強)

    不允許其他用戶插入,更新和刪除行, 允許查看數據,但只有一個用戶可以在表中放置排他鎖

    lock table emp in exclusive mode;

    三) 死鎖

    如:USERA: lock table scott.emp in share mode;

    USERB: lock table scott.emp in share mode ;

    USERA: update scott.emp set ename='Smith' where empno=7369;

    USERB: update scott.emp set job='CLERK' where empno=7521;

    發生死鎖

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>