荒屋敷智也のブログ

【SQL備忘録】トリガーについて


クエリを実行をトリガーとして、他のクエリを実行させる処理をトリガーというのか。

割り込み処理的な立ち位置なのかな?

トリガーの種類

  • 行単位のトリガー(FOR EACH ROW)
  • 文単位のトリガー(FOR EACH STATEMENT)

一つのクエリで複数の行が更新・追加・削除された場合、1つの行ごとにトリガーが発生するのが、行単位のトリガー。

一つのクエリで、一つのトリガーが発生するのが分単位のトリガー。

ひとこと

トリガーを作成しておくことで、自動でクエリを実行されて人為的なミスや汎用性の向上に期待できそう。

【SQL備忘録】正規化について

正規化について

データベースをいかに整理し、汎用性を高める点で非常に需要な知識なので、覚えていて損はないですね。

正規化の種類

  • 非正規化
  • 第一正規化
  • 第二正規化
  • 第三正規化

非正規化

https://tech.pjin.jp/wp-content/uploads/2021/07/78ada3d02443d9d907239cf27aac4e65-300x43.png

一つのテーブルに対して、すべての情報を入れているテーブル。

1データに重複した情報が入ってしまうような状態。

第一正規化

https://tech.pjin.jp/wp-content/uploads/2021/07/c58f2402a2ad1790bebe4494e3279b97.png

1データに1件の情報で重複した情報が入らない、状態のもの。

最低限データベースとして、使えるものという認識。

第二正規化

複数のテーブルに分割し、管理したもの。私がwebアプリをつくときのテーブルに少し似てるかも。

第三正規化

より細かく、テーブルを分けたもの。仕事で使うかもしれないけど、ここまでやると使いにくそう・・・

ひとこと

とりあえず、データベースを使う上で正規化は結構重要な要素ぽいな