Joshua
Joshua

Reputation: 681

PHP myAdmin - Change Field Order (Move Up Or Down)

How do I change the order of my table fields without deleting the field and re-inserting it, using PHP myAdmin?

Upvotes: 60

Views: 47878

Answers (9)

Joseph Adegbola
Joseph Adegbola

Reputation: 59

It's simple. Just go to PHPmyadmin, click on your database, then click table. Then click on structure. Below the table look for the button, "Move columns". Click and order the columns the way you want.

Upvotes: 3

TecBeast
TecBeast

Reputation: 960

If you have phpMyAdmin 4.0.0+, you can use the phpMyAdmin Feature under Structure:

Upvotes: 44

Peyman abdollahy
Peyman abdollahy

Reputation: 829

if you have MySQL Workbench you can easily reorder columns using mouse, graphically.

Just connect to your database, select your table and after right click, alter table and then drag columns to reorder them.

Upvotes: 1

user2145716
user2145716

Reputation: 11

Another alternative:

CREATE new_table SELECT columns-in-new-order FROM old_table;

Upvotes: 1

Populus
Populus

Reputation: 7680

ALTER TABLE `table_name` MODIFY `column_you_want_to_move` DATATYPE AFTER `column`

DATATYPE is something like DATETIME or VARCHAR(20) ..etc

Upvotes: 75

Marc Delisle
Marc Delisle

Reputation: 9007

Since version 4.0, phpMyAdmin has a "Move columns" dialog in Structure, that permits you to graphically move columns in the structure.

Upvotes: 9

Ashish
Ashish

Reputation: 241

Something like this will help

ALTER TABLE Person MODIFY COLUMN last_name VARCHAR(50) AFTER first_name;

This will move last_name right after first_name in order.

Upvotes: 24

Cruz
Cruz

Reputation: 41

alter table table_name modify column col_name type after col_name

Upvotes: 4

Sampson
Sampson

Reputation: 268462

http://dev.mysql.com/doc/refman/5.0/en/change-column-order.html

From the Aforementioned Source:

If you decide to change the order of table columns anyway, you can do so as follows:

  1. Create a new table with the columns in the new order.

  2. Execute this statement:

    mysql> INSERT INTO new_table -> SELECT columns-in-new-order FROM old_table;

  3. Drop or rename old_table.

  4. Rename the new table to the original name:

    mysql> ALTER TABLE new_table RENAME old_table;

Upvotes: 9

Related Questions