看板 Database 關於我們 聯絡資訊
資料庫名稱:MSSQL / ORACLE 資料庫版本:2008 R2 / R11i 內容/問題描述: 以前沒有在MSSQL DBLINK ORACLE 過 參考前輩的寫法 出現錯誤訊息 在MSSQL中, Call oracle package begin EXEC( ' BEGIN WIPR0004100_PKG.Submit_Request(?, ?); END; ' , @x_request_id OUTPUT,@WIP) at oracle_apps end; 第一次執行OK 第二次執行會出現ERROR 連結伺服器 "oracle_apps" 的 OLE DB 提供者 "OraOLEDB.Oracle" 傳回訊息 "ORA-20001: Oracle 錯誤 -20001: fnd_global.set_nls 中偵測到 ORA-20001: Oracle 錯誤 -2074: fnd_global.set_nls.set_parameter('NLS_LANGUAGE','TRADITIONAL CHINESE') 中偵測到 ORA-02074: 在分散式交易中無法 SET NLS 已確認在ORACLE package WIPR0004100_PKG.Submit_Request 沒有用到"fnd_global.set_nls" 如果第一次與第二次執行的時間拉長一點 (大約10秒) 則第二次就不會出現這個問題了 實在不想 + waitfor delay'00:00:05'; 希望板上高手能提點提點!謝謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.160.67.242 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1588822157.A.A0E.html
retsamsu: 幫你找一下 https://reurl.cc/MvjYWn 05/07 13:34
sandre: 成功!!太感動了, +PRAGMA AUTONOMOUS_TRANSACTION; 就好了 05/07 13:51
justoncetime: 不透過個別API存取的原因?個別DB的商業邏輯層還是 05/09 08:32
justoncetime: 有原來的權限要顧吧?求指點迷津 05/09 08:32