2012-05-23 8 views
33

データを失うことなく、自分のデータベーステーブルの列の位置を変更したいと思います。例えば列データを失うことなくMySqlテーブルの列の位置を変更するには?

現在のテーブル:

+----+----------+------+-------+ 
| id | password | name | email | 
+----+----------+------+-------+ 

+----+------+-------+----------+ 
| id | name | email | password | 
+----+------+-------+----------+ 

+4

なぜマットですか?テル? –

+5

どういうコメント 'なぜ重要なのですか?' SELECT *を使い、これを配列からテーブルに変換する人がいますから? –

+0

@Bondye列の順序を変更する唯一の理由は、読みやすいように順序を変更することです。彼が必要とする変更は実際には行われません。基本的に同じです。また、SELECT *を使ったクエリは、すでに悪いSQLの兆候です。 –

答えて

65

はこのようにそれを試してみてください。

ALTER TABLE table_name MODIFY password varchar(20) AFTER id

+0

あなたはそれが動作していることをチェックしましたか? – Addicted

+0

私はこれをチェックしていないと率直に言ってください。しかし、私は動作します。 – Hearaman

+0

thanx、うまくいきます。 –

8

ヒアマンの答えは正しいです。 phpMyAdminを使用している場合は、それを行うための視覚的で実用的な方法があります。

  1. オープンテーブル
  2. "構造" タブを選択します
  3. をクリックし、 "移動列"
  4. ドラッグ&ドロップし、列名

Move columns link, middle of the Structure tabMove columns popup

+0

「列の移動」オプションをどのように見つけるか。 –

+0

@SouravSarkarは構造を示すテーブルのすぐ下にあるはずです。しかし、バージョンの違いが適用されることがあります。 –

+0

どのバージョンで@versionを見ましたか? –

関連する問題