【发布时间】:2021-10-30 18:10:38
【问题描述】:
我正在使用 Eclipse 制作一个程序,该程序允许用户在每次补货/使用时更新化学品的数量,这要求他们输入化学品的 ID 以及他们想要添加/减去的数量。然后执行查询以在数据库中搜索化学品的 ID,并相应更新其数量。
但是,我在更新音量时遇到了困难。我尝试将 MySQL 的 UPDATE 语句从this website 调整为 SET volume = volume + amount added, WHERE Chemical ID = ID by the user;但是,我的代码中似乎存在一些语法错误,更具体地说是在 UPDATE - SET - WHERE 行:
public void IDEnter() {
try {
Class.forName("com.mysql.cj.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:8889/StockControlSystem","root","root");
Statement stmt = con.createStatement();
String sql = "Select * from Chemicals where `Chemical ID` ='" + txtChemical_ID.getText()+"'";
ResultSet rs = stmt.executeQuery(sql);
if(rs.next()) {
stmt.executeUpdate("UPDATE Chemicals" + "SET `Volume` = rs.getInt(Volume) + Integer.parseInt(AmountAdded.getText()) WHERE `Chemical ID` in (txtChemical_ID.getText())");
}
else {
JOptionPane.showMessageDialog(null, "Invalid chemical ID");
txtChemical_ID.setText(null);
}
} catch(Exception exc) {
exc.printStackTrace();
}
}
由于我还是 MySQL 的新手,有人可以帮我纠正这个问题吗?非常感谢您的帮助!
【问题讨论】:
标签: java mysql database eclipse syntax