jjzjj

java - 为什么 PreparedStatement.setNull 需要 sqlType?

根据PreparedStatement.setNull的java文档:“注意:您必须指定参数的SQL类型”。方法需要列的SQL类型是什么原因?我注意到传递java.sql.Types.VARCHAR也适用于非varchar列。是否存在VARCHAR不适用的场景(某些列类型或某些数据库提供商)?谢谢。 最佳答案 AccordingtothejavadocsofPreparedStatement.setNull:"Note:Youmustspecifytheparameter'sSQLtype".Whatisthereasonthatt

java - PreparedStatement setNull(..)

JavaPreparedStatement提供了显式设置Null值的可能性。这种可能性是:prepStmt.setNull(parameterIndex,Types.VARCHAR);此调用的语义是否与使用带有null参数的特定setType时的语义相同?prepStmt.setString(null);? 最佳答案 但要小心这个....LongnullLong=null;preparedStatement.setLong(nullLong);-出现空指针异常-因为原型(prototype)是setLong(long)不是setLo

java - PreparedStatement setNull(..)

JavaPreparedStatement提供了显式设置Null值的可能性。这种可能性是:prepStmt.setNull(parameterIndex,Types.VARCHAR);此调用的语义是否与使用带有null参数的特定setType时的语义相同?prepStmt.setString(null);? 最佳答案 但要小心这个....LongnullLong=null;preparedStatement.setLong(nullLong);-出现空指针异常-因为原型(prototype)是setLong(long)不是setLo