IT

phpMyadmin からデータベースのテーブル名を変更する方法

結論から言うと、管理画面内から既存のテーブルの名前を変更することはできないみたいです。それじゃどうすればいいのかというと、直接SQLを叩いて変更するしか今のところ方法は無いようです。

それではどうするのかというと・・・

ALTER TABLE 現在のテーブル名 RENAME TO 変更後のテーブル名;

という感じで変更できます。
ALTER TABLE というのは既存のテーブルの定義内容を変更する命令です。

例えば、現在の環境が、

データベース名:test_db
現在のテーブル名:before_table
変更後のテーブル名:after_table

だとします。

まずはphpMyAdminでSQL文を入力する画面を表示させましょう。右画面の「SQL」のメニューをクリックします。

SQLを記述できるフォームが表示されます。ここにテーブル名を変更するSQL文を入力します。

この時、テーブル名を「before_table」から「after_table」へと変更するSQL文は以下です。

ALTER TABLE test_db.before_table RENAME TO test_db.after_table;


このSQLを入力して「実行」ボタンをクリックします。(※入力するデータベース名やテーブル名は環境に合わせて変更してください)

うまく処理できると、成功の画面が表示されます。

もしテーブル名を変更するSQL文にミスがあると、エラーが表示されます。

上のエラー画面では「test_db.before_talbeは存在しません」というエラーです。よく見てみると正しくは「table」の部分が「talbe」になっています。このようなに1か所でも入力ミスがあると、エラーが出てしまうので注意してください。

【2017年3月8日追記】phpMyAdminでも管理画面の設定でテーブル名を変更できるようになったみたいです。

いつのバージョンからかわかりませんが、phpMyAdminの管理画面からSQLコマンドを叩かなくてもテーブル名の変更ができるようになったみたいです。

管理画面からテーブル名を変更したいテーブルを左サイドバーからクリックします。

ヘッダーメニューの「操作」をクリックします。

テーブルを(データベース).(テーブル)へ移動する」の画面から、変更後のテーブル名を入力します。

変更後のテーブル名の入力ができたら「実行」ボタンをクリックします。

成功すると上のような画面が表示されます。

これでphpMyAdminの管理画面でデータベースのテーブル名の変更ができました。

ABOUT ME
アバター
ドレッド
目標必達のために鬼努力を惜しまない個人事業主。フリーライターとWeb制作のお仕事をしています。立命館大学中退。放送大学教養学部の全科履修生。中小企業診断士とFP1級を目指してハードに勉強中。

POSTED COMMENT

  1. アバター あれい より:

    コマンド活用させていただきました、ありがとうございます。
    後に気づきましたが当時は分かりませんが現在のバージョンでは
    テーブル選択状態から操作タブの中にある「テーブルを移動する」
    で同様のSQLコマンドが実行される様です。

  2. アバター jugedred より:

    >あれい様

    コメントありがとうございます!
    現在はそういう操作ができるのですね。
    勉強になります。

あれい へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA