我对简单的 CREATE TABLE 查询有疑问。我有两个表“'resort'(带有resortID和resortName)和'season'(带有resortID和resortName)在多对多关系中。我正在尝试使用以下两个查询之一创建连接表resort_season:
CREATE TABLE resort_season (
resortID MEDIUMINT UNSIGNED NOT NULL,
seasonID MEDIUMINT UNSIGNED NOT NULL,
FOREIGN KEY (resortID) REFERENCES resort (resortID),
FOREIGN KEY (seasonID) REFERENCES season (seasonID),
PRIMARY KEY (resortID, seasonID) NOT NULL
);
CREATE TABLE resort_season (
resortID MEDIUMINT UNSIGNED NOT NULL FOREIGN KEY REFERENCES resort (resortID),
seasonID MEDIUMINT UNSIGNED NOT NULL FOREIGN KEY REFERENCES season (seasonID),
PRIMARY KEY (resortID, seasonID) NOT NULL
);
这两个查询都给了我一个错误(在这种情况下是第二个查询)
"You have an error in your syntax; check manual....for right syntax to use near'FOREIGN KEY REFERENCES resort (resortID), seasonID MEDIUMINT UNSIGNED NOT NULL F' at line 2"
:。
我究竟做错了什么?这让我很头疼,因为我不明白为什么会出错。
如果我只是这样做
CREATE TABLE resort_season (
resortID MEDIUMINT UNSIGNED NOT NULL,
seasonID MEDIUMINT UNSIGNED NOT NULL,
PRIMARY KEY (resortID, seasonID) NOT NULL
);
然后它工作正常并创建表。我不确定这张桌子是否会有效地引用表格度假村和季节。