MenüHomeBlogMagic

Mysql Spalte auf andere Position schieben

 

Um die Darstellung mancher Tabellen in MySQL zu verbessern ist es manchmal notwendig um Spalten zu verschieben. Der folgende Befehl erreicht das auf einfache Art und Weise.

ALTER TABLE <tabelle> MODIFY <zu verschiebende spalte> [Attribute]
AFTER <vorherige spalte>

Zu beachten ist dass die Eigenschaften von der Spalte mit angegeben werden müssen, denn MySQL führt nicht einfach einen 'move' Befehl aus, sondern kopiert die alten Datensätze in die neue Spalte, und löscht anschließend die alte. Dabei ist es auch möglich evtl. neue Attribute wie NOT NULL o.ä. zu setzen.

Beispiel:

ALTER TABLE `user` MODIFY `mailaddr` VARCHAR(50) NOT NULL
AFTER `nickname`

Beim erstellen der Tabelle hatte ich die Mail-Adresse als eher unwichtig betrachtet und diese ans Tabellenende verfrachtet. Aufgrund der Zunahme an Eigenschaften in der Tabelle und der zunehmenden Bedeutung von E-Mails, war es wichtig den Datensatz weiter nach vorne zu bringen, um die Benutzertabelle besser im Blick zu haben.

 

Permalink: https://adirmeier.de/Blog/ID_85
Tags: Blog, MySQLvon am 2013-02-19