Podczas próby utworzenia nowej tabeli, MySQL daje mi błąd, którego nie potrafię wyjaśnić.MySQL: Tworzenie tabeli z dwoma kluczami obcymi nie powiedzie się z błędem "Zduplikowana nazwa klucza"
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)
);
Nie powiedzie się to z ERROR 1061 (42000): Duplicate key name 'WarehouseMovements'
. Jeśli usuniemy ograniczenia klucza obcego, to się uda, ale chcę się upewnić, że produkt 1 i produkt 2 faktycznie wskazują gdzieś.
Domyślnym silnikiem jest InnoDB.
Co jest nie tak z zapytaniem?
byłem pod wrażeniem Miałem umieścić nazwę tabeli przed nawiasami ... Huh. Dzięki! To zadziałało. –
@GiorgosBitzes Dodałem odwołanie, w którym opisano składnię. Istnieje kilka sposobów na zrobienie tego. Zobaczysz także przedrostki nazw FK_. – criticalfix