簡體   English   中英

MySQL - CREATE TABLE - 語法錯誤 - 錯誤1064

[英]MySQL - CREATE TABLE - Syntax Error - Error 1064

我一直在看下面的sql腳本多年了,我看不出問題! 這是錯誤1064 - 這可能是任何事情......

CREATE TABLE order (order_no INTEGER NOT NULL AUTO_INCREMENT,
                vat_id INTEGER NOT NULL,
                order_status VARCHAR(30) NOT NULL,
                order_pick_date DATE,
                order_ship_from INTEGER NOT NULL,
                employee_id INTEGER NOT NULL,
                payment_id INTEGER,
                PRIMARY KEY (order_no))
        ENGINE = MYISAM;

Order是SQL中的保留字,為您的表選擇一個不同的名稱。

問題是您正在嘗試使用保留名稱創建表。 如果您將表名更改為“訂單”,那么它將起作用。

有關保留字的完整列表, 查看https://dev.mysql.com/doc/refman/5.5/en/reserved-words.html

正如其他人已經指出的那樣,保留字order是問題所在。

但是,如果需要,您仍然可以通過用反引號/反引號括起來使用它:

`order`

更正的SQL語句(在MySQL 5.5.24中適用於我)是:

CREATE TABLE
`order`
(
     order_no INTEGER NOT NULL AUTO_INCREMENT
    ,vat_id INTEGER NOT NULL
    ,order_status VARCHAR(30) NOT NULL
    ,order_pick_date DATE
    ,order_ship_from INTEGER NOT NULL
    ,employee_id INTEGER NOT NULL
    ,payment_id INTEGER
    ,PRIMARY KEY (order_no)
)
ENGINE = MYISAM;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM