我的语法MySQL出错

时间:2016-02-22 12:39:04

标签: mysql

我对MySQL有点新鲜,所以请原谅我,如果这是显而易见的事情。我正在尝试创建一个新表,但我继续得到相同的错误(1064)。我不知道我的语法有什么问题,我完全是从书中复制它。

CREATE TABLE order
(order_id SMALLINT UNSIGNED,
fname VARCHAR(20),
lname VARCHAR(20),
CONSTRAINT pk_order primary key (order_id)
);

非常感谢任何协助。

3 个答案:

答案 0 :(得分:2)

使用反引号(`)解决此问题:

CREATE TABLE `order`
(order_id SMALLINT UNSIGNED,
fname VARCHAR(20),
lname VARCHAR(20),
CONSTRAINT pk_order primary key (order_id)
);

注意:确保在查询时始终使用此表的后退标记。

SQL小提琴:http://sqlfiddle.com/#!9/91115

答案 1 :(得分:0)

order是mysql中的保留关键字,因此不要将其用作列或表标识符。如初。

答案 2 :(得分:0)

CREATE TABLE orders(order_id SMALLINT UNSIGNED,fname VARCHAR(20),lname VARCHAR(20),CONSTRAINT pk_order primary key (order_id));

这可能是正确的查询。