MySQL查询在phpMyAdmin中工作,但在java中不起作用

时间:2013-10-26 18:25:59

标签: java mysql

我有查询

INSERT INTO tests2 (`name`, `val1`, `val2`, `val3`, `rotation~time`, `rotation~messages~countdown_format`, `rotation~messages~messages`) VALUES ('Testing', 'Test', 'false', '0', '21', 'Value', '[[Value 1,  Value 2]]')

在phpMyAdmin中工作正常,但它给出了一个例外:

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1

在java中使用

调用时
statement.execute(query);

(我使用此方法创建连接:)

        connection = DriverManager.getConnection(getJDBCString(settings.host(), settings.port(), settings.database()), settings.username(), settings.password());
        statement = connection.createStatement();

有什么问题?

修改

我打算将整数和布尔值保存为字符串

我也尝试将坟墓(`)换成'和'

1 个答案:

答案 0 :(得分:0)

我猜测查询的值正在填充Java变量。如果是这样,我会检查'[[Value 1,Value 2]]'是否正确填充了字符串值。 MySQL异常通常发生在错误消息中提供的查询部分之前,因此......

the right syntax to use near ')'

表示问题可能是'[[Value 1,Value 2]]') rotation~messages~messages