我是MySQL的初学程序员。当我在我的数据库message
中创建一个名为chat
的表时,这就是错误:
创建表时出错:SQL语法中有错误;检查与您的MySQL服务器版本对应的手册,以便在'从CHAR(30)到TEXT(300),文本TEXT(1000),第1行的索引INT(10)NOT NULL AUTO_INCREMENT'附近使用正确的语法
完整的MySQL语句是:
CREATE TABLE message(date DATE,from CHAR(30),to TEXT(300),text TEXT(1000),index INT(10) NOT NULL AUTO_INCREMENT,PRIMARY KEY(index))
我知道其他代码是正确的,因为我之前创建了另一个表,并且它工作正常。然后我复制了代码并将其用于此声明。
这可能是一个非常愚蠢的错误,但我无法弄明白。
请帮忙。提前谢谢。
答案 0 :(得分:2)
to
,from
和index
为reserved words。
尝试:
CREATE TABLE message(date DATE,`from` CHAR(30),`to` TEXT(300),text TEXT(1000),`index` INT(10) NOT NULL AUTO_INCREMENT,PRIMARY KEY(`index`))
答案 1 :(得分:1)
from
是一个mysql保留字,
你必须在`,
中添加UPDATE:to,index也是关键,这里是正确的sql
CREATE TABLE message(date DATE,`from` CHAR(30),`to` TEXT(300),text TEXT(1000),`index` INT(10) NOT NULL AUTO_INCREMENT,PRIMARY KEY(`index`))