2011-04-18 61 views

回答

9

你有如下語句:

select foo from bar where a=? and b=? and c=? ... 

你代碼綁定值參數:

st.setInteger(1,123); // goes to a 
st.setString(2,"hello"); // goes to b 
... 

現在,參數#6沒有約束,沒有提供價值。語句不知道發送給數據庫的值是什麼(默認情況下它不會發送NULL)。如果參數值未知,則應該這樣做:

st.setNull(6,Types.VARCHAR); 
1

你可以粘貼你的PreparedStatement代碼嗎?這意味着你有額外的?在您沒有設定價值的聲明中。

相關問題