每日一得

          不求多得,只求一得 about java,hibernate,spring,design,database,Ror,ruby,快速開發(fā)
          最近關(guān)心的內(nèi)容:SSH,seam,flex,敏捷,TDD
          本站的官方站點(diǎn)是:顛覆軟件

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            220 隨筆 :: 9 文章 :: 421 評(píng)論 :: 0 Trackbacks
          key words: update,ORA-01779

          經(jīng)常用到update語句,不過很少用到其他表的數(shù)據(jù)來更新當(dāng)前表,這次用到了,總結(jié)一下

          UPDATE
          ( SELECT /*+ BYPASS_UJVC */
          a.groupname a1,b.groupname b1 from t_account_temp a,t_certificode_temp b
          where a.certificode = b.certificode
          )
          SET a1=b1;

          特別的地方是要加  /*+ BYPASS_UJVC */,讓oracle不檢查健的約束,否則會(huì)報(bào)ORA-01779錯(cuò)誤,不過前提是你確認(rèn)確實(shí)不會(huì)有多個(gè)b表的值出現(xiàn),或者即使有多個(gè)值也沒有影響。

          相關(guān)參考如下

          一種高效率的update多表關(guān)聯(lián)更新測試

          ORA-01779的處理方法

          posted on 2007-08-19 12:49 Alex 閱讀(2290) 評(píng)論(1)  編輯  收藏 所屬分類: Oracle

          評(píng)論

          # re: 利用其他表的數(shù)據(jù)update當(dāng)前表[未登錄] 2011-12-06 15:59 aimy
          這個(gè)語句強(qiáng),
          很受用,謝謝。  回復(fù)  更多評(píng)論
            

          主站蜘蛛池模板: 岐山县| 双城市| 马山县| 剑川县| 秭归县| 合阳县| 和林格尔县| 阿克苏市| 葵青区| 罗田县| 南岸区| 四川省| 松潘县| 礼泉县| 若尔盖县| 珠海市| 会同县| 于都县| 闸北区| 黑山县| 秦皇岛市| 迁安市| 盈江县| 开化县| 乌兰县| 县级市| 江津市| 昌平区| 靖西县| 搜索| 许昌市| 务川| 安丘市| 库尔勒市| 安溪县| 湘潭县| 手游| 任丘市| 马鞍山市| 平潭县| 襄樊市|