LoginSignup
1
1

SQLのDDLについて

Last updated at Posted at 2024-04-27

データ定義言語(DDL)について記載。

※参考 兼 自身のメモ用
※随時追記

CREATE文

空のテーブルを作成できる。
データの追加はINSERT文を使用し、必ずデータ型を指定する。

命名ルール

  1. 使用可能な文字は、半角英数字とアンダースコア"_"のみ
  2. 名前の先頭文字列はアルファベットを使用する
  3. 名前は重複してはならない
sampleCreateTable.sql
-- テーブルの新規作成
CREATE TABLE テーブル名 (
    列名1 データ型 制約,
    列名2 データ型 制約,
    列名3 データ型 制約,
    ...
-- テーブル制約(主キー制約)
-- ※必ず必要、1つのみ
-- 主キーは必ずNOT NULL制約
PRIMARY KEY (列名),
-- 参照整合性制約(外部キー制約)
FOREIGN KEY (外部キー)
REFERENCES 参照テーブル (参照カラム)
)
;

DROP文

テーブルをオブジェクト単位で削除することができる。
一度削除したテーブルはROLLBACK(復旧)できないので、削除する際はよく確認してから実行する。

sampleDropTable.sql
-- テーブルの削除
DROP TABLE テーブル名;

TRUNCATE文

テーブル内の全レコードを削除することができる。
DROP文との違いは、DROP文がテーブルも含めた全レコードを削除しているのに対し、TRUNCATE文はテーブルの表構造はそのままの状態でレコードのみ削除される。

sampleTruncateTable.sql
-- テーブルの全レコード削除
TRUNCATE TABLE テーブル名;

ALTER文

定義済みテーブルを更新することができる。

sampleAlterTableDrop.sql
-- テーブルの列を削除する
ALTER TABLE
    テーブル名
DROP COLUMN
    列名
;
sampleAlterTableAdd.sql
-- テーブルの列を追加する
ALTER TABLE
    テーブル名
ADD COLUMN
    列の定義
;
sampleAlterTableRename.sql
-- テーブル名を変更する
ALTER TABLE
    変更前テーブル名
RENAME TO
    変更テーブル名
;
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1