我在以下几行中遇到语法错误。我不熟悉mysql所以任何指针都会有帮助
ps = con.prepareStatement("INSERT INTO order(status,ordered_on,total_price,user_id) "
+ " VALUES(?,?,?,?)");
ps.setString(1,"pending");
ps.setTimestamp(2,date);
ps.setDouble(3,total_price);
ps.setInt(4,ID);
错误是
MySQL server version for the right syntax to use near 'order(status,ordered_on,total_price,user_id) VALUES('pending','2017-03-22 04:08' at line 1
答案 0 :(得分:1)
问题是order
是mysql的保留关键字;所以你可以随意使用两种解决方案
1:如果您需要一些存款来使用该工作以防您使用反引号逃脱`order`
2:您可以使用复数作为表名称,如订单
ps = con.prepareStatement("INSERT INTO `order`(status,ordered_on,total_price,user_id) "
+ " VALUES(?,?,?,?)");
ps.setString(1,"pending");
ps.setTimestamp(2,date);
ps.setDouble(3,total_price);
ps.setInt(4,ID);
这是指向神秘npm documentation
的q链接