2017-06-23 19 views
-1

我遇到了從sh腳本執行java批處理的麻煩。實質上,我使用了一個sh腳本,它將兩個參數(日期)傳遞給可運行jar文件以更新數據庫。執行Java批處理的Oracle無效數字錯誤

我得到的錯誤是「ORA-01722:無效數字

我知道腳本和參數,我傳遞給罐子是一件好事,因爲,我從我的電腦指揮。它的工作原理問題是直接從服務器上運行sh時,jar執行的sql也是正常的,因爲它直接從我的數據庫控制檯和我的電腦上的jar中運行。

我正在使用的命令是:java -jar JavaFile.jar 20170101 20170107.

任何想法爲什麼會發生這種情況?

編輯1:sh包含確切的java句子和jar工作,問題必須是與oracle配置或某種錯誤有關的東西。

我不能分享很多代碼,因爲它是保密的。

+0

http://www.dba-oracle.com/sf_ora_01722_invalid_number.htm它可能對您有所幫助。 –

+0

沒有更多的上下文來回答這樣的問題是不可能的。請分享您的代碼。 – Mureinik

+0

Oracle依賴會話設置獲取日期和數字的默認格式。可能,您的電腦有其他設置,而不是服務器。也許你需要將這些設置設置爲定義好的值,如'alter session set nls_numeric_characters ='。'';' –

回答

1

Oracle依賴於日期和數字的默認格式的會話設置。可能,您的電腦有其他設置,而不是服務器。也許您需要將這些設置設置爲明確定義的值,如alter session set nls_numeric_characters='.,';

相關問題