Добавление значения в базу данных

Я использую mysql workbench и netbeans. У меня есть таблица в mysql: Продукты, которые содержат productsquantity = 50, например

в java, я хочу добавить значение из текстового поля в базу данных (50 + значение для добавления), пожалуйста, помогите, я использую этот код и не работал

String url = "jdbc:mysql://localhost:3306/******";

String driver = "com.mysql.jdbc.Driver";

String user = "root";

String pass = "12345";


//Error is here:
String sql = "UPDATE Produit " + " SET Quantity =
Quantity+'"+Integer.parseInt(jTextField4.getText())+"' " + "WHERE ProductName = ? " ;





try

{

 Class.forName(driver).newInstance();


 Connection conn = (Connection)DriverManager.getConnection(url,user,pass);

 PreparedStatement pst = conn.prepareStatement(sql);

 pst.setString(1, jTextField4.getText());

 pst.setString(2, jTextField1.getText());

pst.executeUpdate();}

catch( Exception e){

 JOptionPane.showMessageDialog(null, e);

}
1 ответ

Избавление от одиночных кавычек вокруг количества, которое вы добавляете, поможет решить вашу проблему.

Лучшим решением было бы использовать ? вместо этого количества, и установите его с помощью setInt. Таким образом, SQL будет

UPDATE Produit SET Quantity = Quantity + ? WHERE ProductName = ?

и строка для ее установки будет

pst.setInt(1, Integer.parseInt(jTextField4.getText()));

licensed under cc by-sa 3.0 with attribution.