查询是正确的,但在java中给我sqlexception

时间:2012-05-08 09:01:03

标签: mysql jdbc syntax-error access-violation sqlexception

JDBC executeUpdate()执行此MySqlQuery:

CREATE TABLE IF NOT EXISTS TaskLog 
(TaskID int NOT NULL AUTO_INCREMENT, 
NoOfLock int NOT NULL,
LastAcquired varchar(50) NOT NULL,PRIMARY KEY(TaskID))

它给了我这个:

SQLException: 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 'PRIMARY KEY(TaskID))' at line 1

我尝试在PhpMyAdmin中执行它,它有效!所以我不明白为什么它在通过java代码执行时不起作用

1 个答案:

答案 0 :(得分:0)

语法可以从一个DBMS到另一个DBMS不同。它可能在MySQl中有效,但下一个应该适用于大多数系统:

尝试:

CREATE TABLE IF NOT EXISTS TaskLog 
(TaskID int NOT NULL AUTO_INCREMENT, 
NoOfLock int NOT NULL,
LastAcquired varchar(50) NOT NULL,
CONSTRAINT pk_TaskID PRIMARY KEY(TaskID))