MySQLのきほん「フィールドの変更」

スポンサーリンク
パソコン MySQL

前回は、フィールドの作成や削除についてご紹介した。

ところで、作成後にフィールド名を変更したいこともあるだろう。
この際にはフィールドを削除して新たに作成してもよいが、簡単に変更する方法をご紹介しよう。

まずは、mysqlクライアントを起動しよう。

PS C:\Users\vinta> mysql -u myuser -p
Enter password: *****

続いて、basicデータベースに移動しよう。

mysql> USE basic;
Database changed

それでは、updatedフィールドを追加しよう。

mysql> ALTER TABLE usr ADD updated DATE AFTER family;
Query OK, 0 rows affected (0.18 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql>

追加したフィールドを確認してみよう。

mysql> SHOW FIELDS FROM usr;
+---------+-------------+------+-----+---------+-------+
| Field   | Type        | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| uid     | varchar(7)  | YES  |     | NULL    |       |
| passwd  | varchar(15) | YES  |     | NULL    |       |
| uname   | varchar(20) | YES  |     | NULL    |       |
| family  | int         | YES  |     | NULL    |       |
| updated | date        | YES  |     | NULL    |       |
+---------+-------------+------+-----+---------+-------+
5 rows in set (0.04 sec)

mysql>

フィールドの変更

ここで、追加したupdatedフィールドの名前をupdatedAにフィールドに変更しよう。
以下の通り入力しよう。

ALTER TABLE usr CHANGE updated updatedA DATE;

続いて、updatedAフィールドのデータ型をDATETIME型に変更しよう。
以下の通り入力しよう。

ALTER TABLE usr MODIFY updatedA DATETIME;
mysql> ALTER TABLE usr MODIFY updatedA DATETIME;
Query OK, 0 rows affected (0.08 sec)
Records: 0  Duplicates: 0  Warnings: 0

usrテーブルのフィールド情報を確認してみよう。

mysql> SHOW FIELDS FROM usr;
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| uid      | varchar(7)  | YES  |     | NULL    |       |
| passwd   | varchar(15) | YES  |     | NULL    |       |
| uname    | varchar(20) | YES  |     | NULL    |       |
| family   | int         | YES  |     | NULL    |       |
| updatedA | datetime    | YES  |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+
5 rows in set (0.17 sec)

フィールド名とデータ型がそれぞれ変更されている。

それでは、変更したupdatedAフィールドを削除しよう。

mysql> ALTER TABLE usr DROP updatedA;
Query OK, 0 rows affected (0.03 sec)
Records: 0  Duplicates: 0  Warnings: 0

削除されたことを確認してみよう。

mysql> SHOW FIELDS FROM usr;
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| uid    | varchar(7)  | YES  |     | NULL    |       |
| passwd | varchar(15) | YES  |     | NULL    |       |
| uname  | varchar(20) | YES  |     | NULL    |       |
| family | int         | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+
4 rows in set (0.01 sec)

今回は、ここで、mysqlクライアントを終了しよう。

mysql> exit;
Bye
PS C:\Users\vinta>

参考)3ステップでしっかり学ぶ MySQL入門 [改訂第3版]  山田奈美(著)山田祥寛(監修)技術評論社

コメント

タイトルとURLをコピーしました