【DB】スクリプトの流し込む順番

この記事は約2分で読めます。

一般的なスクリプトの実行順序

データベーススキーマを構築するSQLスクリプトでは、以下のような順序でコマンドを記述・実行するのが一般的。

  1. DROP文(開発環境などで再作成する場合)
    • 既存のテーブル、シーケンス、型などを削除するDROP TABLE, DROP SEQUENCE, DROP TYPEなど。これにより、スクリプトを繰り返し実行してもクリーンな状態から開始できます。ただし、本番環境では注意が必要です。
  2. CREATE TYPE
    • カスタムデータ型(ENUMなど)の定義。
  3. CREATE SEQUENCE
    • 明示的に作成するシーケンスの定義。
  4. CREATE TABLE
    • テーブルの定義。この段階で、先に定義された型やシーケンスを参照できます。
  5. ALTER TABLE文(制約やインデックスの追加など)
    • テーブル作成後に追加する外部キー制約、ユニーク制約、インデックスなど。
  6. CREATE INDEX
    • インデックスの作成。
  7. CREATE VIEW
    • ビューの作成。
  8. CREATE FUNCTION / CREATE PROCEDURE
    • 関数やプロシージャの作成。

この順序を守ることで、依存関係によるエラーを避け、スムーズにデータベーススキーマを構築することができる。

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