在尝试创建新表时,MySQL 给了我一个我无法解释的错误。
CREATE TABLE Products (
id INT NOT NULL,
PRIMARY KEY(id)
);
CREATE TABLE WarehouseMovements (
time DATETIME NOT NULL,
product1 INT NOT NULL,
product2 INT NOT NULL,
FOREIGN KEY WarehouseMovements(product1) REFERENCES Products(id),
FOREIGN KEY WarehouseMovements(product2) REFERENCES Products(id)
);
这失败了ERROR 1061 (42000): Duplicate key name 'WarehouseMovements'
。如果我删除外键约束,这会成功,但我想确保 product1 和 product2 实际上指向某个地方。
默认引擎是 InnoDB。
查询有什么问题?