In siti web sviluppato in multilingua può capitare di doversi imbattere in caratteri di scrittura speciali come il russo, il cinese e l’arabo.
Di base MySQL utilizza come collation il “latin” che non prevede caratteri speciali; è per questo motivo che si rende necessario cambiare tali valori di default per il salvataggio dei dati, pena il trovarsi i dati scritti con dei punti di domanda “????????”.
Di seguito i passi per modificare la collation di un database MySQL già esistente e renderlo compatibili con carattere speciali di alcune lingue straniere.

  • Inserire nella stringa di connessione nel web.config il parametro “charset=utf8;” quindi risulterà un stringa simile a “server=localhost;port=3306;database=xxx;password=xxxx;charset=utf8;”
  • Impostare la collation della tabella su “utf8 – utf8_unicode_ci”
  • Inserire nella pagina html in cui si inseriscono i dati nelle textbox il meta <meta http-equiv=”Content-Typecontent=”text/html; charset=utf-8” />
  • Eseguire il comando (tramite script mysql) seguente, “alter table database_name.table_name convert to character set utf8 collate utf8_unicode_ci;”

Ora dovrebbe essere tutto pronto per salvare i dati con caratteri speciali.
Si consiglia sempre, ovviamente, di eseguire un backup del databasa prima di operare sulle tabelle.

LASCIA UNA RISPOSTA

Please enter your comment!
Please enter your name here