Possiamo facilmente spostare una colonna in un database MySQL senza perdere il suo contenuto, grazie al comando ALTER TABLE [..] MODIFY. In questo post, partiremo con il creare una tabella di esempio utile ai nostri test. Possiamo ovviamente anche lavorare su una tabella in produzione sul nostro progetto: in questo caso saltate pure questo passaggio.

CREATE TABLE tabella_demo ( 
   id  INT,
   nome TEXT,
   email TEXT
);

Per questo semplice esempio, abbiamo creato la tabella tabella_demo con le colonne idnome e email.

Adesso immaginiamo di voler spostare la colonna email prima di quella nome: possiamo farlo facilmente, senza perdere i dati contenuti in colonna utilizzando questa sintassi:

ALTER TABLE tabella_demo MODIFY email TEXT AFTER id;

Per farlo, quindi, dobbiamo indicare la colonna dopo la quale vogliamo posizionare quella da spostare usando AFTER [nomecolonna] , nel nostro caso vogliamo posizionarla dopo la colonna [id] .