2015-04-22 102 views
1

最近我有一個克隆的informix數據庫服務器。我創建了一個名爲sp_foo的新存儲過程。調用過程時出現Informix錯誤

當我運行下面的SQL執行過程

EXECUTE PROCEDURE sp_foo(); 

我得到下面的錯誤,當我調用存儲過程。

Error: The system command cannot be executed or it exited with a non-zero status. (State:S1000, Native Code: FFFFFD64) 

我有點困惑,爲什麼我會得到這個錯誤。 INFORMIX不會提供任何額外的數據來找出造成問題的原因。 PS:我是INFORMIX的新手,我使用WinSQL/Informix ODBC來運行SQL。當我在原始服務器上運行SQL時也沒有錯誤。

回答

2

很難給出一個明確的答案,因爲這麼少,但它看起來像一個權限或環境問題。調用SP內的SYSTEM()正試圖執行操作系統命令,但它無法找到它,或者它失敗。

,當你在服務器上運行它的SP工作的事實表明,我認爲無論是:

  1. 當通過ODBC
  2. 將執行其下具有不同權限的不同的用戶帳戶運行,或由SYSTEM()調用執行的命令依賴於在調用服務器上的腳本時存在的環境變量,但在通過ODBC調用時不存在。

我懷疑後者更可能。

+0

我的存儲過程有一個運行shell腳本的SYSTEM命令。這是拋出一些錯誤。不幸的** **錯誤消息**沒有幫助,或者至少我不知道如何解釋它。 – nJoshi