<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    歲月如哥
    人生非夢
    posts - 50,comments - 144,trackbacks - 0
    原來調用存儲過程的地方都沒有使用事務,當然里面包括多個表的更新操作,使用都很正常。后來我給加上了jdbc事務,代碼如下:
    引用:
    TransactionStatus status = super.beginTransaction();
                    try {
                            map = getFtglUtils().cancelFtrw(getPageAjlb(),
                                            key.getId1().intValue(), key.getId2().intValue(), qxyy,
                                            iState);
                            super.getTransactionManager().commit(status);
                    } catch (Exception e) {
                            super.getTransactionManager().rollback(status);
                            throw new SystemException(e);
                    }
    加上事務之后就發現存儲過程沒有完全執行,里面的update語句都沒有執行,但是最后的select還能返回結果集,調用后臺也不報錯……百思不得其解。后來湊巧把存儲過程中創建臨時表的如下語句
    引用:
    -- 創建臨時表
              create table #tmpBAGL
              (
                  BH int,                    -- 編號
                  RWXH smallint              -- 任務序號
              )  
    移到了使用這個臨時表的if else里面,因為只有在一定的條件下才需要創建臨時表。再試了一下調用存儲過程,發現一切正常了!這一次存儲過程沒有執行創建臨時表,就正常了……遂上網搜到一個如下的描述:
    引用:
    select into可以在事務中使用,但是前提條件是這個事務只有select into一條語句。
    SELECT INTO command not allowed within multi-statement transaction.  
    注意是multi-statement transaction
    大家都知道,select into #tabel的最大優勢是速度快,但這個速度快是用不記錄日志來實現的。
    而使用事務的目的就是要么事務中的所有操作全部執行,要么所有操作全部回滾。
    這是靠日志中記錄的操作來保證的。
    如果select into可以在多語句的事務中使用,但是它本身又是不計日志的,也就是不能回滾的。
    這就和事務的定義矛盾了。
    因此,select into不能在多語句的事務中使用。
    但也不是說我們不能使用select into這個好東東,set chained off,使用非鏈式事務或者把select into
    放在單獨一個事務中運行就可以了。
    還有一個在多語句事務中被禁止的,而在應用中會常需要的命令是truncate table。
    原因和解決方法也如上所說。
    把存儲過程還原成最開始那樣,在創建臨時表之前加上set chained off,再次運行問題解決。
    posted on 2009-01-12 09:35 歲月如歌 閱讀(2783) 評論(1)  編輯  收藏

    FeedBack:
    # re: sybase事務中調用含有臨時表的存儲過程的問題
    2010-09-17 09:16 | strawbingo
    不錯,謝了。
    但是可以更詳細一些  回復  更多評論
      

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 国产精品无码免费专区午夜| 国产偷国产偷亚洲清高APP| 在线观看片免费人成视频播放| 麻豆成人精品国产免费| 亚洲一卡2卡3卡4卡5卡6卡| 狼友av永久网站免费观看| 亚洲色大成网站www永久男同| 天天摸天天碰成人免费视频| 亚洲色大成WWW亚洲女子| 无码国模国产在线观看免费| 国产精品亚洲а∨无码播放不卡| 免费国产真实迷j在线观看| 高清免费久久午夜精品| 国产V亚洲V天堂A无码| 久久国产高潮流白浆免费观看| 精品亚洲AV无码一区二区| 麻豆国产人免费人成免费视频| 美女免费视频一区二区三区| 国产乱辈通伦影片在线播放亚洲| 最好免费观看高清在线| 91亚洲国产成人久久精品| 狠狠久久永久免费观看| 你是我的城池营垒免费观看完整版| 日产亚洲一区二区三区| 国产99视频精品免费观看7| 久久国产乱子伦精品免费不卡| 亚洲尹人香蕉网在线视颅| 噜噜嘿在线视频免费观看| 一级做a爰片久久毛片免费陪| 亚洲国产成人一区二区三区| 国产精品久久久久免费a∨| 国产成人高清亚洲一区91| 亚洲不卡中文字幕无码| 91免费资源网站入口| www永久免费视频| 波多野结衣中文一区二区免费 | 久久久久亚洲精品日久生情 | 亚洲精品美女久久久久9999| 日本无卡码免费一区二区三区| 中文字幕免费观看视频| 亚洲中文字幕无码中文|