Rimuovere il primo carattere di un attributo in una tabella MySQL
In questi giorni mi è capitato di trasferire un sito da Blogger a Wordpress. Per far ciò, ho utilizzato l’importer per Blogger di Wordpress che consente di importare tutti gli articoli dalla piattaforma di Google all’interno del DB del sito gestito dal celebre CMS Open Source.
Durante questo procedimento, andato a buon fine, ho dovuto risolvere un piccolo problema. Tutti i post importati da Blogger presentavano il carattere ‘>’ all’inizio di ogni titolo. Cosa fare, allora, per visualizzare tutti i titoli correttamente?
Avrei potuto modificare tutti gli articoli manualmente, tuttavia è una soluzione non molto fattibile quando il numero dei post da importare è elevato. Quindi, da buon programmatore, ho deciso di agire direttamente sul DB effettuando un’operazione che coinvolgesse tutti gli articoli importati.
Per eliminare il carattere fastidioso ho agito eseguendo questa query semplice ma molto efficace:
UPDATE wp_posts SET post_title = TRIM(LEADING ‘>’ FROM post_title)
In pratica, ho chiesto al DBMS di aggiornare tutte le righe della tabella wp_posts (dove sono contenuti gli articoli di Wordpress) eliminando il carattere ’ >’ dalla colonna post_title (dove sono salvati i titoli) laddove fosse presente.
Così facendo, ho sistemato tutti i titoli in modo semplice e soprattuto veloce, senza dover andare a modificare ogni singolo articolo. Spero che questa soluzione possa tornare utile a tutti coloro che si troveranno ad affrontare il mio stesso problema, risparmiando così parecchio tempo.
P.S. Consiglio questa procedura a chi abbia almeno un pò di dimestichezza con i DB e soprattutto ricordo di effettuare un backup dell’intera base di dati prima di procedere.