每日一得

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

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            220 隨筆 :: 9 文章 :: 421 評論 :: 0 Trackbacks
          key words: update,ORA-01779

          經常用到update語句,不過很少用到其他表的數據來更新當前表,這次用到了,總結一下

          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不檢查健的約束,否則會報ORA-01779錯誤,不過前提是你確認確實不會有多個b表的值出現,或者即使有多個值也沒有影響。

          相關參考如下

          一種高效率的update多表關聯更新測試

          ORA-01779的處理方法

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

          評論

          # re: 利用其他表的數據update當前表[未登錄] 2011-12-06 15:59 aimy
          這個語句強,
          很受用,謝謝。  回復  更多評論
            

          主站蜘蛛池模板: 夏河县| 中宁县| 蓝山县| 伊吾县| 溧水县| 宜君县| 菏泽市| 德钦县| 灌云县| 陆川县| 鄯善县| 广宗县| 封丘县| 德钦县| 通渭县| 伊吾县| 体育| 吉木萨尔县| 乌兰察布市| 巩义市| 建平县| 溧阳市| 鄂托克旗| 土默特左旗| 浑源县| 涞源县| 古蔺县| 兰考县| 左权县| 涿鹿县| 咸宁市| 望都县| 博兴县| 武清区| 屯昌县| 泾川县| 昌图县| 县级市| 大洼县| 绍兴市| 桃江县|