2
晚安在我的時區。調用存儲過程
我使用Sybase ASE 15,和我有兩個輸入參數都VARCHAR
的存儲過程,基本上是在存儲過程中我使用動態SQL,這樣的事情:
@cmd = 'select * from TABLE where COL IN'[email protected]+'AND [email protected]
EXEC(@cmd)
我打電話使用此過程JDBC像這樣:
CallableStatement stmt = conn.prepareCall("{call MyStoredProcedure(?,?)}");
stmt.setString(1, "'''0'',''1'''");
stmt.setString(2, '''fr''');
stmt.executeQuery();
它引發錯誤,通知該調用格式錯誤。
但是,如果我在IDE中直接運行調用是這樣的:
EXEC MyStoredProcedure'''0'',''1'',''2'',''3'',''4'',''5'',''6'',''7''','''fr'''
它運行沒有任何問題,所以我想有一些問題與字符轉義我猜。
任何人都遇到過這個問題?
隨着問候
在此先感謝
儘管在第一個參數中,我只是在數據庫中使用整數,但它們被定義爲VARCHAR,這就是爲什麼我使用引號 – tt0686