A consulta que você listou com essa tabela funciona bem para mim, então o erro não está lá.
Ao analisar mais de perto o erro, no entanto, noto o seguinte:
Essa chave PRIMARY se parece muito com um número seguido por uma data e hora, o que provavelmente é. Muito provavelmente existe, por exemplo, um gatilho no banco de dados mysql para esta tabela.
(Com base no id + data, eu diria provavelmente algo para acompanhar as mudanças de preço automaticamente?)
Outra opção é a possibilidade de haver um problema de chave estrangeira, embora com base no erro que não seja provável.
Tente executar a seguinte instrução mysql no banco de dados da tabela e dê uma olhada no resultado.
SHOW TRIGGERS