我在mysql表中更新日期。我的问题是某些日期为空,不会插入到表中。我使用此检查,但我的问题是 int 类型
public void Salva(String query){
int i = 1;
try{
con=Connessione.ConnessioneDB();
pst= con.prepareStatement(query, PreparedStatement.RETURN_GENERATED_KEYS);
if (anno != null){
pst.setString(i, getAnno());
i++;
}
if (numFormulari != null){
pst.setString(i, getNumFormulari());
i++;
}
if (dataFornulari != null){
pst.setString(i, getDataFornulari());
i++;
}
if (getIdClienti != null){
pst.setInt(i, getIdClienti());
i++;
}
if (idIva != null){
pst.setString(i, getIdIva());
i++;
}
像
int
这样的基元类型不能为空,你应该尝试使用类 Integer
正如霍夫曼所说,基元类型,如整数,不能null
。你可以做的是想出一个无效的值(比如-1,因为我假设你的ID不能是负数)。修改您的方法以在无法获得有效 ID 时返回无效 ID,并检查无效 ID 而不是 null
。
我假设您正在检查我在代码中看到的唯一int
ID。总的来说。
此外,您的更多代码(例如getIdClienti()
方法的示例代码)和有关项目的更多详细信息可能有助于我们找到更合适的解决方案。