2012-03-26 51 views
0

我不想创建sql表,但我收到错误。在MySQL中创建新表时SQL语法错误

 
#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 
'CREATE TABLE `articles_ratings` (`ID` INT(11) NOT NULL AUTO_INCREMENT, `a' at line 10 
CREATE TABLE `articles` (
    `ID` int(11) NOT NULL AUTO_INCREMENT , 
    `a_title` varchar(255) , 
    `a_subtitle` tinytext, 
    `a_content` text, 
    PRIMARY KEY (`ID`) 
) 

CREATE TABLE `articles_ratings` (
    `ID` INT(11) NOT NULL AUTO_INCREMENT , 
    `article_id` int(11) NOT NULL , 
    `rating_value` tinyint(2) NOT NULL , 
    `rater_ip` varchar(20) NOT NULL , 
) 
+0

看起来你在articles_ratings'的'结束流浪逗号,也忘了';'终止第一个'CREATE语句TABLE',这就是为什么MySQL的指向一个语法错误的开始第二个“CREATE TABLE”。 – 2012-03-26 13:25:59

+0

@ kazik1616啊,是的,难以捉摸的考古徽章 – Strawberry 2015-08-24 09:40:10

回答

1

添加主键到您的文章评级陈述或删除最后一个逗号。

CREATE TABLE articles ( 
    ID int(11) NOT NULL AUTO_INCREMENT , 
    a_title varchar(255) , 
    a_subtitle tinytext, 
    a_content text, 
    PRIMARY KEY (ID) 
); 
CREATE TABLE articles_ratings ( 
    ID INT(11) NOT NULL AUTO_INCREMENT , 
    article_id int(11) NOT NULL , 
    rating_value tinyint(2) NOT NULL , 
    rater_ip varchar(20) NOT NULL , 
PRIMARY KEY (ID) 
); 
+0

非常感谢。 – 2012-03-27 09:32:24