Come modificare la codifica del database MySQL

Guida passo dopo passo: convertire un database MySQL in UTF-8.

Durante la migrazione di siti web o quando si lavora con progetti datati, può capitare di riscontrare problemi di visualizzazione errata dei caratteri. Nella maggior parte dei casi, la causa è un encoding del database non corretto. Di seguito sono illustrati alcuni semplici metodi per modificare l'encoding del tuo database MySQL — tramite phpMyAdmin o query SQL.

Un database è un insieme di tabelle correlate in cui sono archiviati tutti i dati del tuo sito.


Modificare l'encoding tramite phpMyAdmin e un editor di testo

Per prima cosa, esporta il tuo database tramite phpMyAdmin sul computer locale.

file

Apri il file SQL esportato in un editor di testo (ad esempio Notepadqq o Notepad2) e converti il suo encoding in UTF-8 senza BOM.

Quindi importa il file in un nuovo database tramite phpMyAdmin.


Modificare l'encoding tramite una query SQL

In phpMyAdmin → seleziona il tuo database → scheda «SQL», esegui la seguente query:

file

ALTER TABLE `db_name`.`table_name` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;

Nota

Questa query modifica il set di caratteri della tabella specificata con quello selezionato (in questo caso, utf8).

Per convertire l'encoding di tutte le tabelle in una sola operazione, utilizza questa query:

SELECT CONCAT(
  'ALTER TABLE `', t.`TABLE_SCHEMA`, '`.`', t.`TABLE_NAME`, 
  '` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;'
) AS sqlcode
FROM `information_schema`.`TABLES` t
WHERE t.`TABLE_SCHEMA` = 'DATABASE_NAME'
ORDER BY 1;

Nota

Sostituisci DATABASE_NAME con il nome del tuo database.

Copia le righe generate ed eseguile nella console SQL di phpMyAdmin.


Aiuto

Hai domande o ti serve una mano? Scrivici tramite il sistema di ticket — siamo sempre qui per aiutarti!

Hai bisogno di aiuto?I nostri ingegneri ti aiuteranno gratuitamente con qualsiasi domanda in pochi minutiContattaci