O erro Data truncated for column em MySQL significa que os dados fornecidos para a coluna ‘nomeColuna’ foram truncados, ou seja, foram cortados ou reduzidos para caber no tamanho máximo definido para essa coluna.
O erro Data truncated for column ‘nomeColuna’, geralmente, ocorre quando estamos tentando inserir ou atualizar dados em uma coluna do banco de dados e o valor fornecido é maior do que o tamanho máximo permitido para essa coluna.

Em meu caso, particularmente, esse erro ocorreu porque tentei inserir um valor com vírgula no MySQL que deveria receber com ponto.
Se você, assim como eu, está tentando inserir um número com vírgula em um campo que espera um número sem vírgula, você pode substituir a vírgula por um ponto antes de inserir os dados no banco de dados. Por exemplo, se você tem o número 3,14, substitua por 3.14 antes de inserir no banco de dados.
Se estiver usando PHP, poderá usar a seguinte linha para fazer essa substituição da vírgula por um ponto
$numero_com_virgula = "3,14";
$numero_sem_virgula = str_replace(',', '.', $numero_com_virgula);
Acima, a variável $numero_com_virgula recebe “3,14” e, na segunda linha, a variável $numero_sem_virgula recebe o valor corrigido e pronto a ser inserido no banco de dados.
Deixando apenas um ponto
Às vezes, podemos receber um valor grande, como em 33.88998,00. Nesse caso, para inserir como dinheiro, podemos remover o primeiro ponto e deixar apenas o último.
Em PHP
$valorFormatado = "33.88998,00";
$valorNumerico = floatval(str_replace(array('.', ','), array('', '.'), $valorFormatado));
Ou usar str_replace duas vezes. A primeira remover o ponto e a segunda substitui a vírgula por um ponto.
$valor = str_replace('.', '', $valor);
$valor = str_replace(',', '.', $valor);
Em JavaScript
var valorFormatado = "33.88998,00";
var valorNumerico = parseFloat(valorFormatado.replace(/\./g, '').replace(',', '.'));
// Agora 'valorNumerico' contém um valor numérico adequado para o MySQL
Veja tutoriais sobre MySQL clicando aqui.