ぽかぽかコード日和

とっても暑い夏の日にプログラミングはじめました☀️

【SQL】DDL文(CREATE・ALTER・DROP)

DDL文(データ定義言語)とは、
データベースの構造を作成・変更・削除するためのSQL文のこと。
テーブルやインデックス、ビューを操作する。
データ型一覧

作成(CREATE)

CREATE TABLE テーブル名 (
 列名1 列名1のデータ型名,
 列名2 列名1のデータ型名
)

  • テーブルに行(レコード)を追加するには、INSERT文を使う。
CREATE TABLE customers (
 id  INT,
 name VARCHAR(20) ,
 age  INT  DEFAULT 0
)

☀︎テーブルを新規作成する。

☀︎データの詳細設定☀︎
デフォルト値
 テーブル作成で列にデフォルト値を設定しておくと、
 INSERT文でその列の値を省略したときは自動的にその値が入る。
 デフォルト値を設定していないときは、NULLが入る。
NOT NULL (非NULL制約)
 「NOT NULL」・・・NULLを入力できない
 「NULL」・・・NULLも入力できる
UNIQUE(一意性制約)
 そのカラムには同じ値を重複して登録できない。
PRIMARY KEY(主キー制約)
 行を一意に識別するための列に設定する。
 PRIMARY KEYを設定することで、自動的にUNIQUEとNOT NULLの制約が付く。
AUTO_INCREMENT
 自動採番
 その行の最大値+1を自動的にセットする。

削除(DROP)

DROP TABLE テーブル名

  • DELETE文はテーブルに登録されたデータの削除をする。
  • テーブルの存在を確認してから作成・削除するには「IF EXISTS」を使う。
DROP TABLE IF EXISTS customers;

☀︎テーブルが存在するときのみ削除する。

変更(ALTER)

・列の追加

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

・列の削除

ALTER TABLE テーブル名 DROP 列名

ALTER TABLE customers ADD created_date DATETIME;
ALTER TABLE customers DROP created_date;
  • 既存のテーブルに列を追加するときは、新しい列は一番後ろに挿入される。

全行の一括削除(TRUNCATE)

TRUNCATE TABLE テーブル名

  • DELETE文は指定した行だけ削除もできるが、TRUNVATEは必ずすべての行を削除する。
  • 記録を残さず削除するので、高速に処理できる。

参考にしたサイト