テーブルのカラム名を変更する(リネーム)構文の書き方について紹介していきます
前提条件
飲み物を管理するテーブルのカラム名を変更する
使用するテーブル:drinksテーブル
テーブル構造を確認するSQLを実行する
show columns from drinks;
出力結果
+-------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| price | int(11) | NO | | NULL | |
| name | varchar(255) | NO | | NULL | |
+-------+--------------+------+-----+---------+----------------+
3 rows in set (0.016 sec)
条件
- priceカラムの名前をproduct_priceに変更する
カラム名を変更する
カラム名の変更にはalter table changeを使用していきます。
構文
alter table テーブル名 change 変更するカラム名 新しいカラム名 データ型;
テーブル名:カラム名を変更するテーブル名を指定する
変更するカラム名:指定したテーブルの変更したいカラム名を指定する
新しいカラム名:新しいカラム名を指定する
データ型:新しいカラム名のデータ型を指定する
Point!
データ型の指定は必須となります。新旧のカラム名でデータ型が同じ場合でも必ず指定しなければならない。
drinksテーブルのpriceカラムをリネームする
使用するSQL文
alter table drinks change price product_price int;
テーブル名にはdrinksを指定
変更するカラム名はprice
新しいカラム名はproduct_price
データ型はint(整数)
コードを入力してテーブル情報を確認すると
+---------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| product_price | int(11) | YES | | NULL | |
| name | varchar(255) | NO | | NULL | |
+---------------+--------------+------+-----+---------+----------------+
3 rows in set (0.018 sec)
priceカラムの名称がproduct_priceに変更(リネーム)されていることがわかります