2012-01-25 128 views
0

我想爲我下載的一個簡單的腳本創建這兩個表,但是當運行sql命令時它返回語法錯誤。MySql語法錯誤

我得到的錯誤是:

CREATE TABLE `usrsig` (
    `id` int(9) NOT NULL auto_increment, 
    `url` varchar(255) default NULL, 
    `user` int(9) NOT NULL default '0', 
    PRIMARY KEY (`id`) 
    KEY `user_own` (`user`) 
); 

#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 'KEY `user_own` (`user`))' at line 6 

而對於第二TABEL如下:

CREATE TABLE `usruser` (
    `id` int(9) NOT NULL auto_increment, 
    `name` varchar(30) NOT NULL default '', 
    `pass` varchar(30) default NULL, 
    `last` datetime default NULL, 
    `hits` int(9) NOT NULL default '0', 
    PRIMARY KEY (`id`) 
    KEY `name_index` (`name`) 
); 

#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 'KEY `name_index` (`name`))' at line 8 

如果有人能這麼好心來幫我,我會非常讚賞。

感謝

回答

2

你只是缺少一個逗號後PRIMARY KEY (id)

CREATE TABLE `usrsig` (
    `id` int(9) NOT NULL auto_increment, 
    `url` varchar(255) default NULL, 
    `user` int(9) NOT NULL default '0', 
    /* Comma needed... */ 
    PRIMARY KEY (`id`), 
    KEY `user_own` (`user`) 
); 


CREATE TABLE `usruser` (
    `id` int(9) NOT NULL auto_increment, 
    `name` varchar(30) NOT NULL default '', 
    `pass` varchar(30) default NULL, 
    `last` datetime default NULL, 
    `hits` int(9) NOT NULL default '0', 
    /* Comma needed... */ 
    PRIMARY KEY (`id`), 
    KEY `name_index` (`name`) 
); 

有一個小竅門,時間約99%,據報道由MySQL錯誤標識的地方之前發生的一個字符。所以,看一個字符或符號KEY name_index前:

檢查對應於您的MySQL服務器版本正確的語法使用手動附近「KEY name_index

+0

非常感謝你100%的發現。抱歉,現在只能回答,但系統從未通知我回復我的帖子。再次感謝 –

+0

@BarrySchulman歡迎來到Stack Overflow。與其他論壇和事物不同,這裏的答案可以在幾分鐘或幾秒鐘內爲除最深奧的東西之外的所有問題提出問題。所以下次再回來看看。我們會幫助你,讓你一路順風:) –

0

我認爲你只是缺少後一個逗號PRIMARY KEY('id')行。

0

你把主鍵和其他鍵的方式是語法問題。

Primary Key (id),

把一個逗號後面這一點。

0
CREATE TABLE usrsig (
    id int(9) NOT NULL AUTO_INCREMENT, 
    url varchar(255) DEFAULT NULL, 
    user int(9) NOT NULL DEFAULT 0, 
    PRIMARY KEY (id), 
    KEY user_own (user) 
); 

CREATE TABLE usruser (
    id int(9) NOT NULL AUTO_INCREMENT, 
    name varchar(30) NOT NULL DEFAULT '', 
    pass varchar(30) DEFAULT NULL, 
    last datetime DEFAULT NULL, 
    hits int(9) NOT NULL DEFAULT 0, 
    PRIMARY KEY (id), 
    KEY name_index (name) 
);