L’errore “Incorrect string value” segnala un problema nella rappresentazione del testo. Per risolverlo, confronta codifica dei dati, connessione e colonna.
Indice dei contenuti
Che cosa significa
Il valore contiene caratteri che non possono essere memorizzati con il set di caratteri della colonna o connessione.
Cause più frequenti
- Il testo contiene caratteri non rappresentabili nel charset della colonna.
- La connessione dichiara una codifica diversa da quella effettiva dei dati.
- Il file importato contiene byte non validi per la codifica selezionata.
Diagnosi passo per passo
- Leggi il messaggio completo: la guida riguarda “Incorrect string value”, non ogni possibile errore 1366. Individua la colonna e il valore coinvolti senza pubblicare dati personali nei log.
- Confronta il charset della colonna con quello usato dalla connessione e dal file di origine. Non limitarti al valore predefinito del database.
- Riproduci l’errore su una copia con un campione minimo, includendo il carattere che causa il problema.
Procedura di risoluzione
- Se la connessione usa una codifica errata, correggila nella configurazione del client o dell’applicazione. Cambiare soltanto la collation non corregge byte mal codificati.
- Se devi memorizzare caratteri Unicode non supportati da utf8mb3, valuta utf8mb4 per colonne e connessione. Pianifica la migrazione su una copia con backup e verifica degli indici.
- Se il file è codificato in modo diverso da quanto dichiarato, convertine una copia con uno strumento che gestisca correttamente la codifica. Conserva l’originale.
- Verifica il testo dopo salvataggio e rilettura. Non sostituire indiscriminatamente i caratteri con punti interrogativi per far terminare l’importazione.
Guide Xlogic correlate
- MySQL Error 1064: errore di sintassi SQL
- MySQL Too many connections: come risolvere
- MySQL server has gone away: cause e soluzioni