MySQL: A criação de tabela com duas chaves estrangeiras falha com o erro “Duplicate key name”

Ao tentar criar uma nova tabela, o MySQL está me dando um erro que não posso explicar.

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)
);

Isso falha comERROR 1061 (42000): Duplicate key name 'WarehouseMovements'. Se eu remover as restrições de chave estrangeira, isso será bem-sucedido, mas quero garantir que product1 e product2 estejam realmente apontando para algum lugar.

O mecanismo padrão é o InnoDB.

O que há de errado com a consulta?

questionAnswers(3)

yourAnswerToTheQuestion