I am getting a syntax error for my MySQL (5.5.24) query.
The error is:
#1064 - 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 ''topics'( 'topicid' int unsigned not null auto_increment primary key, 'creator' at line 1
The query is:
create table 'topics'(
'topicid' int unsigned not null auto_increment primary key,
'creator' varchar(255) not null,
'createtime' datetime not null,
'content' text not null
);
What's wrong?
3 Answers 3
You are using the wrong quotes. Use ` instead of '
CREATE TABLE `topics` (
`topicid` int(11) unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY,
`creator` varchar(255) NOT NULL,
`createtime` datetime NOT NULL,
`content` text NOT NULL
) ENGINE=InnoDB;
I also would recommend specifying the engine.
The error is the single quotes around the table and column names. If you want to escape these names use back ticks (`) not quotes.
Why are you using quotes? Try
CREATE TABLE topics (
topicid int(11) unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY,
creator varchar(255) NOT NULL,
createtime datetime NOT NULL,
content text NOT NULL
);