在插入 MySQL 表之前检查是变量为空



我在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()方法的示例代码)和有关项目的更多详细信息可能有助于我们找到更合适的解决方案。

相关内容

  • 没有找到相关文章