2011-04-18 62 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代码吗?这意味着你有额外的?在您没有设定价值的声明中。

相关问题