【MySQL】テーブルの属性を追加・変更・削除する方法


ここではMySQLで、テーブルの属性を追加・変更・削除する方法を紹介しています。

テーブルの属性を追加する方法

テーブルに属性を追加するには、ALTER TABLE~ADD COLUMN文を使います。

ALTER TABLE~ADD COLUMN文nの基本構文は次の通りです。

ALTER TABLE テーブル名 ADD COLUMN 列名 データ型;

次のSQLではtab1テーブルにcol4列をINT型unsigned属性で追加しています。

mysql> ALTER TABLE tab1 ADD COLUMN col4 int unsigned;
Query OK, 0 rows affected (0.14 sec)
Records: 0  Duplicates: 0  Warnings: 0

テーブルの属性を変更する方法

カラム名の変更

カラムの名前を変更するにはALTER TABLE~CHANGE COLUMN文を使います。

ALTER TABLE テーブル名 CHANGE COLUMN 変更前カラム名 変更後カラム名 データ型;
mysql> ALTER TABLE tab1 CHANGE COLUMN age age2 int;
Query OK, 0 rows affected (0.05 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> DESC tab1;
+----------+--------------+------+-----+---------+-------+
| Field    | Type         | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| emp_id   | varchar(10)  | YES  |     | NULL    |       |
| emp_name | varchar(100) | YES  |     | NULL    |       |
| dept     | varchar(10)  | YES  |     | NULL    |       |
| age2     | int(11)      | YES  |     | NULL    |       |
+----------+--------------+------+-----+---------+-------+
4 rows in set (0.03 sec)

属性の変更

テーブル/カラムの属性を変更するには、ALTER TABLE~MODIFY文を使います。

ALTER TABLE~MODIFY文で属性を変更する基本構文は次の通りです。

ALTER TABLE テーブル名
MODIFY COLUMN 列名 データ型;

次のSQLではtab1テーブルのemp_name列をvarchar型(100)でbinary属性に変更しました。

mysql> ALTER TABLE tab1 MODIFY COLUMN emp_name varchar(100) binary;
Query OK, 0 rows affected (0.12 sec)
Records: 0  Duplicates: 0  Warnings: 0

テーブルの属性を削除する方法

テーブルのカラム・列を削除するには、ALTER TABLE~DROP文を使います。

ALTER TABLE~DROP文で列を削除する基本構文は次の通りです。

ALTER TABLE テーブル名 DROP COLUMN 列名;

次のSQLでは、TAB1テーブルのCOL4列を削除しています。

mysql> ALTER TABLE tab1 DROP COLUMN col4;
Query OK, 0 rows affected (0.12 sec)
Records: 0  Duplicates: 0  Warnings: 0