【发布时间】:2020-02-06 08:39:18
【问题描述】:
这里,resultSet.getInt() 不起作用,但我不知道我的代码有什么问题。
我想增加列的值(名称作为变量“出席”)。使用 SELECT 语句我想读取当前值并使用 UPDATE 我想将相应的值增加 1。但问题是 int a = r.getInt("'" + admission + "'");不起作用。尽管当前值不是 0(例如 1),但它始终返回值 0。我的代码有什么问题?
try {
Class.forName("org.sqlite.JDBC");
c = DriverManager.getConnection("jdbc:sqlite:"+ x +".db");
s = c.createStatement();
r = s.executeQuery("SELECT '" + attendance + "' FROM viewer WHERE name = '" + name + "' AND year = '" + year + "'");
while (r.next()){
int a = r.getInt("'" + attendance + "'");
int b = 1 + a;
String sql = "UPDATE viewer SET '" + attendance + "' = ? WHERE name = ? AND year = ? ";
p = c.prepareStatement(sql);
p.setInt (1,b);
p.setString (2,name);
p.setInt (3,year);
p.executeUpdate();
}
p.close();
c.close();
// r.getInt() value always 0
}
catch (ClassNotFoundException | SQLException e) {
JOptionPane.showMessageDialog(null, e);
}
【问题讨论】:
标签: java sql sqlite swing jtable