MYSQL错误,我似乎无法弄明白

时间:2014-03-07 18:53:59

标签: mysql database

CREATE TABLE words (
word_id TINYINT UNSIGNED NOT NULL
 AUTO_INCREMENT,
lang_id TINYINT UNSIGNED NOT NULL,
title VARCHAR(80) NOT NULL,
intro TINYTEXT NOT NULL,
home VARCHAR(30) NOT NULL,
forum_home VARCHAR(40) NOT NULL,
'language' VARCHAR(40) NOT NULL,
register VARCHAR(30) NOT NULL,
login VARCHAR(30) NOT NULL,
logout VARCHAR(30) NOT NULL,
new_thread VARCHAR(40) NOT NULL,
subject VARCHAR(30) NOT NULL,
body VARCHAR(30) NOT NULL,
submit VARCHAR(30) NOT NULL,
posted_on VARCHAR(30) NOT NULL,
posted_by VARCHAR(30) NOT NULL,
replies VARCHAR(30) NOT NULL,
latest_reply VARCHAR(40) NOT NULL,
post_a_reply VARCHAR(40) NOT NULL,
PRIMARY KEY (word_id),
UNIQUE (lang_id)
);

运行后我收到错误

  

(#1064 - 您的SQL语法有错误;请查看与您的MySQL服务器版本对应的手册,以获得正确的语法,以便使用''语言' VARCHAR(40)NOT空值,   register VARCHAR(30)NOT NULL,   登录VARCHAR('第9行)

我是MySql的初学者,请提前谢谢!

2 个答案:

答案 0 :(得分:1)

'应为`一个backtick

   'language' VARCHAR(40) NOT NULL 
-- ^        ^  or just language  

注意,总是使用反引号(`)来包含列/表名是一般的好习惯。

答案 1 :(得分:0)

只需删除''或使用``代替,这将解决它!

CREATE TABLE words (
word_id TINYINT UNSIGNED NOT NULL
 AUTO_INCREMENT,
lang_id TINYINT UNSIGNED NOT NULL,
title VARCHAR(80) NOT NULL,
intro TINYTEXT NOT NULL,
home VARCHAR(30) NOT NULL,
forum_home VARCHAR(40) NOT NULL,
language VARCHAR(40) NOT NULL,
register VARCHAR(30) NOT NULL,
login VARCHAR(30) NOT NULL,
logout VARCHAR(30) NOT NULL,
new_thread VARCHAR(40) NOT NULL,
subject VARCHAR(30) NOT NULL,
body VARCHAR(30) NOT NULL,
submit VARCHAR(30) NOT NULL,
posted_on VARCHAR(30) NOT NULL,
posted_by VARCHAR(30) NOT NULL,
replies VARCHAR(30) NOT NULL,
latest_reply VARCHAR(40) NOT NULL,
post_a_reply VARCHAR(40) NOT NULL,
PRIMARY KEY (word_id),
UNIQUE (lang_id)
);