4

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

4

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.

0
2

The error is the single quotes around the table and column names. If you want to escape these names use back ticks (`) not quotes.

0
1

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
);

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.