JUST DO IT ~

          我只想當個程序員

          oracle 表記錄 加鎖 2 個程序訪問,保持同步問題。



          session 1

          SQL> select * from test_gddg where a1='a1' for update ;


          SQL
          > update  test_gddg
            
          2  set a1 = 'xxx'
            
          3  where a1='a1';

          已更新 
          1 行。

          SQL
          > commit;

          提交完成。


          session 2
           進程wait  掛起。



          SQL
          > update  test_gddg 
            
          2  set a2 ='best'
            
          3  where a1 = 'a1'
            
          4  ;

          0 rows updated

          where a1 = 'a1'  因為在session 1 被修改了。
          這里訪問到的 也無效了。

          結果是session 無法定位記錄



          查看鎖

          SELECT   S.SID   SESSION_ID,S.USERNAME,LMODE,REQUEST,O.OWNER||'.'||O.OBJECT_NAME||'   ('||O.OBJECT_TYPE||')',S.TYPE   LOCK_TYPE,L.ID1   LOCK_ID1,L.ID2   LOCK_ID2  
              
          FROM   V$LOCK   L,SYS.DBA_OBJECTS   O,V$SESSION   S    
              
          WHERE   L.SID   =   S.SID   AND   L.ID1   =   O.OBJECT_ID


          posted on 2008-01-31 11:22 小高 閱讀(460) 評論(0)  編輯  收藏 所屬分類: Oracle

          導航

          <2008年1月>
          303112345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          統計

          常用鏈接

          留言簿(3)

          隨筆分類(352)

          收藏夾(19)

          關注的blog

          手冊

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 百色市| 中西区| 铜鼓县| 乐山市| 宣汉县| 连江县| 琼结县| 浦城县| 荃湾区| 淮安市| 宜城市| 连山| 垦利县| 元氏县| 光泽县| 普陀区| 宜春市| 德化县| 东阳市| 庆安县| 潜山县| 平和县| 大洼县| 河西区| 梁河县| 宜丰县| 轮台县| 惠来县| 宝清县| 柯坪县| 方城县| 赤峰市| 湘乡市| 海原县| 蒲城县| 诸暨市| 沾化县| 观塘区| 永清县| 九江县| 鄱阳县|