创建表语句中的MySQL语法错误

时间:2012-07-07 12:17:14

标签: mysql create-table

我在SQL语句中表现不佳,对不起,我有一个声明:

CREATE TABLE app (  
    id INT NOT NULL AUTO_INCREMENT,  
    attachments LONGTEXT,  
    cc TEXT,  
    cc_full TEXT,  
    date TEXT NOT NULL,  
    from TEXT,  
    from_full TEXT NOT NULL,  
    headers TEXT NOT NULL,  
    html_body LONGTEXT,  
    mailbox_hash TEXT NOT NULL,  
    message_id TEXT NOT NULL,  
    reply_to TEXT,  
    subject TEXT NOT NULL,  
    tag TEXT,  
    text_body LONGTEXT,  
    to TEXT,  
    to_full TEXT NOT NULL, 
    PRIMARY KEY(id)
)

不幸的是,我收到了这个错误:

  

错误(1064):您的SQL语法出错;查看与您的MySQL服务器版本对应的手册,以便在'TEXT,from_full TEXT NOT NULL,标题TEXT NOT NULL,html_body LONGTEXT,m'在第1行附近使用正确的语法

我认为可能是'from'是一个保留字问题所以我把所有列名都包在引号中,但仍然没有快乐!

请帮忙!

2 个答案:

答案 0 :(得分:3)

datefrom是任何SQL格式的保留字。 始终使用引号(`)来包围它们,以使它们被接受。

参考:MysQL Reserved Words

答案 1 :(得分:1)

FROM是一个保留的MySQL关键字。将您的字段名称更改为其他名称 与您的dateto字段相同。