【发布时间】:2020-09-30 03:28:07
【问题描述】:
我在 MYSQL 查询下运行并收到此错误。有人可以在这里帮助我吗?我正在使用 xampp 运行 MySQL 并执行语句
#1064 - 您的 SQL 语法有错误;检查与您的 MariaDB 服务器版本相对应的手册,以获取在“NOT NULL”附近使用的正确语法, DeliveryMode varchar NOT NULL, 数量 int NOT NULL, 辣的'在第6行
下面是我的创建表查询
CREATE TABLE Bag (
BagId int NOT NULL AUTO_INCREMENT,
DishName varchar NOT NULL,
DeliveryMode varchar NOT NULL,
Qty int NOT NULL DEFAULT 1,
Spicy varchar(20) NULL,
SpecialInstructionsFood varchar(250),
BagStatus varchar(100) NOT NULL,
DateCreated datetime DEFAULT current_timestamp(),
DateUpdated datetime DEFAULT current_timestamp(),
FOREIGN KEY(DishName) REFERENCES Dish(DishName),
CONSTRAINT FK_DishName_Bag FOREIGN KEY(DishName)
REFERENCES Dish(DishName),
FOREIGN KEY(DeliveryMode) REFERENCES DeliveryModeType(Name),
CONSTRAINT FK_DeliveryModeType_Bag FOREIGN KEY(DeliveryMode)
REFERENCES DeliveryModeType(Name),
FOREIGN KEY(Spicy) REFERENCES SpicyType(Name),
CONSTRAINT FK_SpicyType_Bag FOREIGN KEY(Spicy)
REFERENCES SpicyType(Name),
FOREIGN KEY(BagStatus) REFERENCES BagStatusType(Name),
CONSTRAINT FK_BagStatusType_Bag FOREIGN KEY(BagStatus)
REFERENCES BagStatusType(Name),
PRIMARY KEY (BagId)
);
【问题讨论】:
-
'CHAR 和 VARCHAR 类型的声明长度表示要存储的最大字符数。' - dev.mysql.com/doc/refman/8.0/en/char.html ,如果仍然无法添加您的 FK 参考表,您需要提供菜名和送货方式的长度。