Java JDBC抛出MySQL语法异常,尽管查询有效
大家好,乐于助人的人 我在一个基于mysqldump创建新db模式的应用程序中有一小部分。 相关部分如下所示:Java JDBC抛出MySQL语法异常,尽管查询有效,java,mysql,jdbc,Java,Mysql,Jdbc,大家好,乐于助人的人 我在一个基于mysqldump创建新db模式的应用程序中有一小部分。 相关部分如下所示: log.info(“=设置基本数据库”); //执行转储中的每个命令 for(字符串查询:dump.split(“;”)){ 语句。执行(查询); } 这很好,但有些语句会出现以下情况 com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以了解第1行“ot_su
log.info(“=设置基本数据库”);
//执行转储中的每个命令
for(字符串查询:dump.split(“;”)){
语句。执行(查询);
}
这很好,但有些语句会出现以下情况
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以了解第1行“ot_subtotal.php”附近使用的正确语法
本例中的查询是
插入'configuration'值中(194,'MODULE_ORDER_TOTAL_INSTALLED','ot_subtotal.php;ot_discount.php;ot_coupon.php;ot_shipping.php;ot_cod_fee.php;ot_subtotal_no_tax.php;ot_tax.php;ot_TOTAL_netto.php;ot_TOTAL.php',6,0,NULL,'2016-06-17 15:27:24',NULL);
如果我将字符串“'ot_subtotal.php;ot_discount.php;ot_coupon.php;ot_shipping.php;ot_cod_fee.php;ot_gv.php;ot_subtotal_no_tax.php;ot_total_netto.php;ot_total.php”替换为类似于“hello world”的内容,它会在稍后的另一个查询中工作并中断
问题是,我可以通过终端命令“mysql…有什么想法吗?这是因为
for (String query : dump.split(";")) {
statement.execute(query);
}
您正在拆分代码>导致查询不完整
例如:
INSERT INTO `configuration` VALUES (194,'MODULE_ORDER_TOTAL_INSTALLED','ot_subtotal.php;ot_discount.php;ot_coupon.php;ot_shipping.php;ot_cod_fee.php;ot_gv.php;ot_subtotal_no_tax.php;ot_tax.php;ot_total_netto.php;ot_total.php',6,0,NULL,'2016-06-17 15:27:24',NULL,NULL);
在拆分后的上述查询代码>将被删除
INSERT INTO `configuration` VALUES (194,'MODULE_ORDER_TOTAL_INSTALLED','ot_subtotal.php
这是不正确的 这是因为
for (String query : dump.split(";")) {
statement.execute(query);
}
您正在拆分代码>导致查询不完整
例如:
INSERT INTO `configuration` VALUES (194,'MODULE_ORDER_TOTAL_INSTALLED','ot_subtotal.php;ot_discount.php;ot_coupon.php;ot_shipping.php;ot_cod_fee.php;ot_gv.php;ot_subtotal_no_tax.php;ot_tax.php;ot_total_netto.php;ot_total.php',6,0,NULL,'2016-06-17 15:27:24',NULL,NULL);
在拆分后的上述查询代码>将被删除
INSERT INTO `configuration` VALUES (194,'MODULE_ORDER_TOTAL_INSTALLED','ot_subtotal.php
这是不正确的 而不是
dump.split(";")
使用
如果您以正常方式创建转储文件。而不是
dump.split(";")
使用
如果您以正常方式创建转储文件。哎哟,太明显了。谢谢你的快速帮助()很高兴帮了你:)哎哟,太明显了。谢谢你的快速帮助()很高兴帮助了你:)