java - 如何从 netbeans 将 int 值添加到 sql 列

标签 java mysql sql netbeans

我正在尝试将 JSpinners 值添加到数据库中的列中, 为什么当我将变量 query2 放入 db.update() 中而不是查询时它可以工作?我需要改变什么?

try {
    int points = (int) antalPoäng.getValue();

    String query = "UPDATE ELEVHEM SET HUSPOANG = HUSPOANG" + points + "WHERE ELEVHEMSNAMN ='Gryffindor'";
    String query2 = "UPDATE ELEVHEM SET HUSPOANG = HUSPOANG +1 WHERE ELEVHEMSNAMN ='Gryffindor'";

    if (namnElevhem.getSelectedItem().equals("Gryffindor")) {
        db.update(query);
        JOptionPane.showMessageDialog(null,"The points has been added")
    }
}        
catch(InfException e) {

}

最佳答案

我怀疑在您的第一个查询中您希望将 HUSPOANG 列增加一定数量。我们可以尝试更正您的串联查询字符串,但最好在此处使用准备好的语句:

String sql = "UPDATE ELEVHEM SET HUSPOANG = HUSPOANG + ? WHERE ELEVHEMSNAMN = 'Gryffindor'";
PreparedStatement ps = conn.prepareStatement(sql);
ps.setInt(1, points);
ps.executeUpdate();

如果您想继续使用当前的方法,那么您需要修复查询字符串:

String query = "UPDATE ELEVHEM SET HUSPOANG = HUSPOANG + " + points +
    " WHERE ELEVHEMSNAMN = 'Gryffindor'";

您缺少一些所需的空格,但最好再次使用准备好的语句,这样可以轻松避免此类格式问题。

关于java - 如何从 netbeans 将 int 值添加到 sql 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53970767/

相关文章:

php - 使用 PHPExcel 导入时将表列与数据映射

php - 从 mysql 在 PHP 中创建数组

sql - 用于在SQL中检测复制/粘贴代码的工具?

sql - LEFT OUTER JOIN with LIMIT

javax.validation 2.0.1 List<Object> 在 spring boot 中不起作用

java - 有没有一种简单的方法可以从父类(super class)对象列表创建子类对象列表?

mysql - 服务器重启后 MariaDB 非 root 用户密码重置

MySQL 中 RAISERROR 的等效项

java - 如何对 HashMap<String,List<Employee>> 中的员工列表进行排序?

java - 如何使用 HashMap 在 ExpandableListView 中实现过滤器