[英]Mysql Java update column from jtextfield
如何使用Java从JTextField
更新数据库中的字段?
total
add_quantity
我需要使用sql将数量添加到总数中。
total = total + add_quantity
我尝试了这个:
String value1 = jTextField5.getText();
PreparedStatement pst = cn.prepareStatement("UPDATE Capitales_totales SET capital_total = $capital_total + '"+value1+"';
正确的语法是什么?
您的问题不是很清楚,没有提供capital_total
数据类型。 因此,我们假设它是整数或数字数据类型。
将一个值添加到已经存储在列中的值的MySQL语法是这样的:
UPDATE mytable
SET mycol = mycol + 20
WHERE id = 1
如果mycol包含NULL值,则将分配NULL。 (一个未知值加20会导致一个未知值。)如果您想将NULL值当作零来处理...
UPDATE mytable
SET mycol = IFNULL(mycol,0) + 20
WHERE id = 1
至于如何在Java预准备语句中执行此操作,请使用绑定占位符代替SQL文本中的值,然后使用setString
方法为绑定占位符提供一个值。
String sql = "UPDATE mytable
SET mycol = IFNULL(mycol,0) + ?
WHERE id = 1";
PreparedStmt pst = cn.prepareStatement(sql);
pst.setString(1, value1);
用例的示例代码片段:
PreparedStatement pst = cn.prepareStatement("Update Capitales_totales set capital_total =capital_total+?");
pst.setString(1, Integer.parseInt("int_string"));
OR
pst.setInt(1, 1001); //sample int 1001
尝试使用绑定,例如
PreparedStatement pst = cn.prepareStatement("UPDATE Capitales_totales SET capital_total = capital_total + ?");
pst.setInt(1, Integer.parseInt(value1));
注意: Integer.parseInt()
可能会抛出RuntimeExpection
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.