mysql - 如何更新sql中的日期

标签 mysql sql jdbc

所以基本上我正在尝试通过 jdbc 驱动程序更新表中的记录,jdbc 驱动程序不允许我更新任何记录,它不断抛出此错误消息

You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'set brand ='Nissan', set type='Compactor Vehicle',set model='zx1000x',set dateAq' at line 1

我已经检查了所有值,它们的格式似乎与 sql 的格式相同。我怀疑是日期记录没有成功。

下面是我正在使用的sql语法

update vehicles set capacity = "+capacity+",set brand ='"+brand+"', set type='"+type+"',set model='"+model+"',set dateAqcuire ="+date+" where registrationPlate ='"+registrationNumber+"'
public void updateVehicle(){
database db = new database();
String registrationNumber = RegistrationPlate.getText();
int vehicleCapacity = Integer.parseInt(capacity.getText());
String brandz= brand.getText();
String vehicletype = vehicleType.getValue();
String vehicleModel = Model.getText();
LocalDate localDate= dateAccquire.getValue();
java.sql.Date date = java.sql.Date.valueOf(localDate);
db.UpdateVehicle(registrationNumber, vehicleCapacity, brandz, vehicletype, vehicleModel, date);
vehicleAlerts("updated");
}

下面是方法签名

public void UpdateVehicle(String registrationNumber,int capacity,String brand,String type,String model,java.sql.Date date){//code to update records}

最佳答案

您只需设置一个关键字:

update vehicles set capacity = "+capacity+",brand ='"+brand+"', type='"+type+" ..

了解准备语句以防止 SQL 注入(inject)

关于mysql - 如何更新sql中的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49686237/

相关文章:

mysql - 多个 IN() 运算符 - 无结果

postgresql - 在 SQL 事务中获取实体的 id 字段

Java MySQL检查数据库中是否存在值

mysql - MySQL 备份的最佳实践

php - Symfony 从模型生成数据库

sql - 如何将多行插入到 SQLite 3 表中?

mysql - MySQL CREATE TABLE 语句的外键错误(err : 150)

java - ArrayList 显示数据库中的所有结果

php - MySQL 以 "Fatal Error"停止并需要重新启动

php - 价格显示超过 2 位小数?