根据PreparedStatement.setNull的java文档:"注意:您必须指定参数的SQL类型".该方法需要列的SQL类型的原因是什么?
我注意到传递java.sql.Types.VARCHAR也适用于非varchar列.是否存在VARCHAR不适合的情况(某些列类型或某些数据库提供程序)?
谢谢.
San*_*rma 11
根据PreparedStatement.setNull的java文档:"注意:您必须指定参数的SQL类型".该方法需要列的SQL类型的原因是什么?
为了最大限度地兼 根据规范,有些数据库不允许将无类型的NULL发送到底层数据源.
我注意到传递java.sql.Types.VARCHAR也适用于非varchar列.是否存在VARCHAR不适合的情况(某些列类型或某些数据库提供程序)?
我不认为这种行为确实是规范的一部分,或者如果是,那么我确信那里会有某种隐含的强制行为.在任何情况下,都不建议依赖于在基础数据存储区更改时可能会中断的此类行为.为什么不指定正确的类型?
JDBC驱动程序似乎正在逐渐远离setNull.请参阅添加对setObject的支持(<arg>,null).
我支持更逻辑行为的数据库列表是:
我不支持此逻辑行为的数据库列表是: