パソコン・スマホの困ったを助けます!
SQL

[SQL初心者へ]ALTER TABLE文で列の追加、削除をする〜テーブル定義を更新〜

ALTER TABLE文とは、使い方を初心者さんにもわかりやすく解説していきます。
insert intoやdeleteを使った場合はこちらにあります。
https://useful-lab.com/archives/5120

ALTER TABLE文とは?

テーブル定義の内容を変更するのにこのALTER TABLE文が使われます。
多彩な使い方ができますが、
ここではALTER TABLE文を使って「列の追加」「列の削除」を解説します。

テーブル定義を変更する方法

列の追加

ALTER TABLE文を使った列の追加は以下の定型文を使用します。

alter table テーブル名 add 列名 型 制約;

「制約」とありますがこれは「null」や「primary key」を入れます。
制約がなければ入力しなくても大丈夫です。
制約って何?と思ったあなたはこちらを見てください。
https://useful-lab.com/archives/5698
では実際の例を見ていきます。

テーブル名:birthday

購入日 品目 費用
2020/07/14 18,000

 

のようなテーブルがあります。
これに列を追加します。

alter table birthday add 店舗 varchar(20);

と実行すると

テーブル名:birthday

購入日 品目 費用 店舗
2020/07/14 18,000 null

 

店舗の列が追加されました。
値が「null」なのは「nullにしない」制約をせず、値も入力していないのでこのように表示されます。
途中で出てきた「varchar」ってなに?のあなたはこちらを見てください。
https://useful-lab.com/archives/5525
次は列の削除を行います。

卓上扇風機は侮れない

近年流行の卓上扇風機。
どうせ風量が弱くて使えないでしょう?
いいえ、この卓上扇風機は違います。
https://useful-lab.com/archives/5546

列の削除

ALTER TABLE文を使った列の削除は以下の定型文を使用します。

alter table テーブル名 drop 列名 型 制約;

同じく「制約」とありますがこれは「null」や「primary key」を入れます。
では実際の例を見ていきます。

テーブル名:birthday

購入日 品目 費用 店舗
2020/07/14 18,000 null

 

このテーブルの店舗を削除します。

alter table birthday drop 店舗 varchar(20);

と入力すると

テーブル名:birthday

購入日 品目 費用
2020/07/14 18,000

 

になります。

まとめ

以上までがALTER TABLE文を使用してテーブル定義を変更する方法でした。
既存のテーブルに列を追加するときは原則一番最後になります。
DBMSによっては任意にできますが。
この記事が良かったと言うあなたはTwitterのフォローをお願いします!
ABOUT ME
TANSAN
某パソコンショップ店員がパソコン・スマホで困った!という悩みを解決していきます。 ITパスポートの攻略法も随時更新中! PC・スマホで困ったことがあればTwitterのDMまで! 名前の由来は炭酸水が好きなので、でも間違えないでください 私の炭酸水好きは炭酸水が騒がれ始める10年も前から好きなんです。 サイト作りのコンセプトは「赤ちゃんでもパソコン・スマホの設定できるわかりやすいサイト作り」です。 私TANSANとUseful Labどっちもよろしく!!