Condividi
Errore: Data too long for column at row 1 - fix
Ho creato un database mysql, con una tabella prodotti che ha un campo di nome 'Description' di tipo VARCHAR()
. Sembrava funzionare tutto regolarmente quando ad un certo punto ricevo il seguente messaggio di errore durante una insert su questa tabella, eccolo:
Data too long for column 'description' at row 1
Cosa significa di preciso? E perchè su altre INSERT non me l'ha dato e tutto ad un tratto si?
In Corso
4
MySql
19-03-2020
1 Risposta
6690 Visite
+2
Risposte ( 1 approvate )
Il tipo VARCHAR() in mysql così come anche negli altri RDBMS ha i suoi limiti, ossia un campo (colonna) dichiarato come tale non può contenere una mole di dati più grande di quella dettato dal suo limite ovvero dalla lunghezza specificata per esso.
Se tu dichiari un campo come VARCHAR(10), 10 sta ad indicare il numero di caratteri massimo che quella colonna può contenere.
Quindi l'errore dato dal messaggio:
Data too long for column 'description' at row 1
non significa altro che per una certa insert è stato superato il limite massimo di dati (data) accettabili per quella colonna, ecco perché alcune volte ti dà l'errore altre volte no.
Quello che puoi fare è aumentare la dimensione dei caratteri accettati dal VARCHAR nella dichiarazione della colonna 'description' oppure valutare se è meglio cambiare il tipo dichiarandola come TEXT.