Header
2019-01-23
2019-10-21

MySQLでカラム名の変更と上書きする

Db2019012301

MySqlで既存のカラム名を変更する方法を公開します。

MySqlで既存のカラム名を変更するコマンド

基本は以下のような形になります。

ALTER TABLE テーブル名 CHANGE COLUMN 既存のカラム名 新カラム名 型名 制約;

名前のみ変更したい場合

名前のみ変更したい場合でも、新規のカラム名と既存のカラム型を記載する必要があります。

以下例はtagsテーブルのproviderIdカラムをtagIdの名称に変更する場合です

mysql> ALTER TABLE tags CHANGE COLUMN providerId tagId int;

カラム自体を別のカラムに上書きする場合

既存のカラムを別の型・別のカラム名に変更することも可能です

以下はnumberカラムをtagNameに名前変更し、型をchar型、30バイト制限に変更する場合です

まずカラム構成は以下のような形

mysql> describe  tags;
+-----------+----------+------+-----+---------+----------------+
| Field     | Type     | Null | Key | Default | Extra          |
+-----------+----------+------+-----+---------+----------------+
| id        | int(11)  | NO   | PRI | NULL    | auto_increment |
| number    | int(11)  | YES  |     | NULL    |                |
| tagId     | int(11)  | YES  |     | NULL    |                |
| createdAt | datetime | NO   |     | NULL    |                |
| updatedAt | datetime | NO   |     | NULL    |                |
+-----------+----------+------+-----+---------+----------------+

以下コマンドを実行

ALTER TABLE tags CHANGE COLUMN number tagName char(30);
mysql> describe  tags;
+-----------+----------+------+-----+---------+----------------+
| Field     | Type     | Null | Key | Default | Extra          |
+-----------+----------+------+-----+---------+----------------+
| id        | int(11)  | NO   | PRI | NULL    | auto_increment |
| tagName   | char(30) | YES  |     | NULL    |                |
| tagId     | int(11)  | YES  |     | NULL    |                |
| createdAt | datetime | NO   |     | NULL    |                |
| updatedAt | datetime | NO   |     | NULL    |                |
+-----------+----------+------+-----+---------+----------------+

以上になります。

その他MySQL記事一覧

MySQLでテーブル名を変更する

MySQLテーブルから指定カラムを削除する

MySQLでデータを削除する

MySQLでテーブルへカラムを追加するALTER TABLE ~ ADD

MySQLでNULLや空文字を検索する

【初心者・独学者向け】データベースとは何かを解説します

Ruby on Railsでデータベースカラムの追加と削除を行う 

DjangoでMySQLを利用する|初心者・独学者向け入門コンテンツ

Sequel PROでAWSのDBに接続する

前の記事
次の記事
人気記事
カテゴリーから記事を探す