Per quanto sia un problema non troppo complesso, il problema dell’importazione di testi in mysql a volte può divenare una vera noia. Può capitare, infatti che nell’importare o inserire dei testi in mysql, qualcosa vada storto con il charset e vi troverete in db una serie di caratteri sporchi. Cosa fare, dunque, per bypassare il problema nel caso in cui non fosse possibile ripetere la procedura di insert nel modo corretto? una via semplice è quella di sostituire i caratteri speciali nel testo direttametente in db attraverso una semplice operazione di replace.
La query che sarà necessario eseguire è:
update nome_tabella set nome_campo = replace(nome_campo, 'CARATTERE DA SOSTITUIRE', CARATTERE IN SOSTITUZIONE');
Supponiamo ad esempio di voler cambiare i caratteri come quelli in tabella successiva:
¬ sostituire con ì
¹ sostituire con ù
¨ sostituire con è
© sostituire con é
² sostituire con ò
dovremmo eseguire delle query sostituendo opportunamente i campi ed i caratteri da sostituire.
Dunque per verificare il numero di righe coinvolte eseguiremo ad esempio:
select nome_campo from nome_tabella WHERE nome_campo LIKE "%ì%";
Per fare l’update
UPDATE `nome_tabella` SET nome_campo=REPLACE(nome_campo, 'ì', 'ì')
Tutto qua …

Comments