2012-10-31 93 views
0

我很想知道爲什麼我有這個錯誤:java.lang.Exception:參數索引超出範圍(2>參數個數,即1)。java.lang.Exception:參數索引超出範圍(2>參數數量爲1)

是,我使用PreparedStatement的

SQL="SELECT pcsv("+servidor_virtual_nuestro+","+nivel_cuenta_receptora+","+codigo_sku[id_componente]+","+t_precio[tipo_precio]+",0) as p_unitario FROM servidores_virtuales t1"+ 
"WHERE t1.id_servidor_virtual= ? "; 


PreparedStatement pstm100 = this.conexion.prepareStatement(SQL); 

pstm100.setInt(1, servidor_virtual_nuestro); 

ResultSet rs66 = pstm100.executeQuery(); 

PCSV是我所創建的過程,所以我不知道爲什麼我有這個錯誤,你能幫助我嗎?非常感謝

+0

你能顯示'pcsv'的代碼嗎? –

+0

使用callableStatements調用storedProcedure – PermGenError

+0

上面的SQL字符串用於填充變量的值是什麼? –

回答

3

我沒有看到什麼會導致拋出的異常,但我想這可能是一個副作用,你正在創建不正確的SQL。您的SQL字符串需要在t1WHERE之間的空格。

或者它可能是一些額外的問號,在你的一些變量。在執行之前,嘗試將SQL字符串打印到日誌或stdout

+0

我已經打印它,並沒有問題。 – zoit

相關問題