MySQLでカラムを追加・変更・削除しよう
目安時間:30分
この記事は、MySQLの以下の操作について説明します。
- カラムを追加する操作
- カラム名を変更する操作
- カラムを削除する操作
この記事を読む前に
MySQLの開発環境構築
- Macの場合:MySQLの開発環境を用意しよう
- Windowsの場合:MySQLの開発環境を用意しよう
必要な知識
※ お使いのPCの環境によって、実際の画面と記事内の画像では見た目が異なる可能性があります。
1. データを準備しよう
準備するデータベースを確認しよう
はじめに、準備するデータベースの確認を行います。この記事では、スーパーマーケット(shop_appデータベース)の商品データ管理(itemsテーブル)を例にしてカラム操作を説明していきます。
準備するデータベースおよびテーブルの構造は以下になります。

データ準備の手順を確認しよう
以下の手順でデータを準備していきましょう。
- MySQLにログインする
- データベースを作成する
- テーブルを作成する
- データを登録する
MySQLにログインしよう
データを準備するにはMySQLにログインする必要がありますので、MySQLを起動し、ログインしましょう。
ログインできたら、必要なデータベースやテーブル、データを準備していきましょう。
データベースを作成しよう
まずは先ほど確認した
shop_appデータベースを作成していきます。次のクエリを入力し、エンターキーを押してください。
CREATE DATABASE shop_app;Query OKと表示されれば、成功です。実際に
shop_appデータベースが作成できたかを確認しましょう。次のクエリを実行して、データベースの一覧を表示してください。
SHOW DATABASES;表示された一覧に
shop_appという名前のデータベースが含まれていれば、成功です。次のクエリを実行して、データベースを選択してください。
USE shop_app;Database changedと表示されれば、データベースの選択が完了です。テーブルを作成しよう
shop_appデータベースを作成できたので、このデータベースにitemsテーブルを作成しましょう。- Macの場合は、次のクエリを実行してください。
CREATE TABLE items(id INT AUTO_INCREMENT, name TEXT, price INT, category TEXT, PRIMARY KEY(id));- Windowsの場合は、次のクエリを実行してください。
CREATE TABLE items(id INT AUTO_INCREMENT, name TEXT, price INT, category TEXT, PRIMARY KEY(id)) DEFAULT CHARSET=utf8;Query OKと表示されれば成功です。実際にテーブルが作成できたかを確認しましょう。
次のクエリを実行して、テーブルの一覧を表示してください。
SHOW TABLES;itemsという名前のテーブルが表示されれば、成功です。データを作成しよう
最後に、
itemsテーブルにデータを3件登録しましょう。
以下の3つのクエリを実行してください。INSERT INTO items(name, price, category) VALUES ('にんじん', 60, '野菜');INSERT INTO items(name, price, category) VALUES ('バナナ', 200, '果物');INSERT INTO items(name, price, category) VALUES ('牛乳', 120, '飲料');それぞれ
Query OKと表示されれば成功です。実際にデータが作成できたかを確認しましょう。
次の
SELECTクエリを実行してください。SELECT * FROM items;画像のように3つのデータが登録されていればデータの準備は完了です。

2. カラムを追加しよう
カラム追加の手順を確認しよう
以下の手順でカラムを追加していきましょう。
- 現在のテーブルを確認する
- カラムを追加する
- カラム追加後のテーブルを確認する
現在のテーブルを確認する
カラムを追加する前に、現在のテーブルを一度確認しておきましょう。
次のクエリを実行してください。
SELECT * FROM items;カラムを追加する
実際にカラムを追加しましょう。
今回のようにカラムを追加したい場合は、下の画像のようにしましょう。在庫数は数字(整数)で表すことができるので、クエリ中のデータ型はINTにします。
それでは実際に次のクエリを実行してみましょう。
ALTER TABLE items ADD COLUMN stock INT;実行後に、
Query OKと表示されれば成功です。カラム追加後のテーブルを確認する
itemsテーブルにstockカラムを追加できたかを確認しましょう。次のクエリを実行して、カラムが追加されていることを確認してください。
SELECT * FROM items;NULLと表記されているのはstockカラムの値が未設定であることを表しています。UPDATEクエリを使って、実際に値を設定してみましょう。今回は、idカラムが「1」のデータのstockカラム(在庫数)を「100」に設定してみます。次のクエリを実行してください。
UPDATE items SET stock = 100 WHERE id = 1;実行後に、
Query OKと表示されれば成功です。再びテーブルの中を確認してみましょう。
次のクエリを実行してください。
SELECT * FROM items;画像のように
idカラムが「1」のデータの在庫数が設定されていれば成功です。
残りの
idカラムが「2」と「3」のデータの在庫数も設定してしまいましょう。次のクエリを実行してください。
UPDATE items SET stock = 150 WHERE id = 2;UPDATE items SET stock = 80 WHERE id = 3;実行後に、
Query OKと表示されれば成功です。再びテーブルの中を確認してみましょう。
次のクエリを実行してください。
SELECT * FROM items;idカラムが「2」と「3」のデータにも在庫数が設定されていれば、カラム追加は完了です。3. カラム名を変更しよう
カラム名変更の手順を確認しよう
以下の手順でカラム名を変更していきましょう。
- 現在のテーブルを確認する
- 変更するカラムのデータ型を確認する
- カラム名を変更する
- カラム名変更後のテーブルを確認する
現在のテーブルを確認する
カラム名を変更する前に、現在のテーブルを確認しておきましょう。
次のクエリを実行してください。
SELECT * FROM items;変更するカラムのデータ型を確認する
カラム名を変更するクエリでは、カラムのデータ型を入力する必要があります。
priceカラムのデータ型を確認して同じデータ型を指定できるようにしましょう。次のクエリを実行して、テーブル情報を確認してください。
DESCRIBE items;Typeと書いてある列が、データ型を表しています。画像のように、priceカラムのデータ型はINTです。
カラム名を変更する
データ型の確認ができたので、
priceカラムをcostという名前に変更してみましょう。カラム名を変更するには下の画像のようにします。

それでは実際に次のクエリを実行してみましょう。
ALTER TABLE items CHANGE COLUMN price cost INT;実行後、
Query OKと表示されれば成功です。カラム名変更後のテーブルを確認する
itemsテーブルのpriceカラムがcostカラムに変更できたかを確認しましょう。次のクエリを実行してください。
SELECT * FROM items;4. カラムを削除しよう
カラム削除の手順を確認しよう
以下の手順でカラムを削除していきましょう。
- 現在のテーブルを確認する
- カラムを削除する
- カラム削除後のテーブルを確認する
現在のテーブルを確認する
まずは、現在のカラムを確認しておきます。
次のクエリを実行してください。
SELECT * FROM items;カラムを削除する
現在のテーブルを確認できたので、
itemsテーブルのcategoryカラムを削除していきましょう。カラムを削除するには、下の画像のようにします。
それでは実際に次のクエリを実行してみましょう。
ALTER TABLE items DROP COLUMN category;実行後、
Query OKと表示されれば成功です。カラム削除後のテーブルを確認する
categoryカラムが削除できたかを確認しましょう。次のクエリを実行してください。
SELECT * FROM items;5. うまくいかない時のチェックリスト
うまくいかない場合は、以下のような間違いがないかチェックしてみましょう。
- 記事で指定したコードが貼り付けられていない
- 入力したファイル名やソースコードなどに誤字脱字がある
- コマンドの内容や実行している場所が違う