[英]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.