gpt4 book ai didi

java - JDBC PreparedStatement 中 "null primitives"的解决方法?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:27:46 26 4
gpt4 key购买 nike

<分区>

使用原始 JDBC 时,您可以像这样参数化 PreparedStatement:

PreparedStatement statement = connection.prepareStatement(someSQLString);
String someString = getSomeString();
Integer int = getSomeInteger();
statement.setString(1, someString);
statement.setLong(2, 5L);
statement.setInt(3, int);

...

在这里,如果 someStringnull,那很好——字符串可以为 null。但是如果 getSomeInteger() 返回 null,我们就有问题了。

PreparedStatement#setInt(int,int) 将原始 int 设置为值,因此不能为 null

但是,对于这条特定记录,我可能希望上面第 3 列的值为 null 是完全合理的。毕竟,我曾经使用过的每个 RDBMS使用允许数字(INT、LONG 等)字段为 NULLABLE...

那么解决方法是什么?

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com