1366: Incorrect string/integer value for column
MySQLO que significa?
Um valor incompatível com o tipo ou o character set da coluna foi inserido em uma coluna. Geralmente causado por incompatibilidade de codificação de caracteres ou de tipo.
Por que acontece?
Gravação de um emoji/caractere de 4 bytes (utf8mb4) em uma coluna latin1, entrada de texto não numérico em uma coluna numérica, charset de conexão errado, ou envio de um valor de tipo diferente do esperado.
Como resolver
Para problemas de caracteres, converta a coluna/tabela para utf8mb4: ALTER TABLE my_table CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci e defina o charset da conexão como utf8mb4. Valide os tipos na aplicação para campos numéricos. Lembre-se de que o servidor roda em SQL mode estrito (STRICT); a causa raiz é o tipo/a codificação dos dados.
Mais entradas deste banco
- 1215Cannot add foreign key constraint
- 1451Cannot delete or update a parent row: a foreign key constraint fails
- 1452Cannot add or update a child row: a foreign key constraint fails
- 1044Access denied for user to database
- 1264Out of range value for column
- 1052Column 'x' in field list is ambiguous
- 1136Column count doesn't match value count