覚えておこうか

トリガー
 トリガーは、表に対して何らかの変更処理が加えられたときに、その変更処理をきっかけとして自動的に実行される特殊なストアドプロシージャのことです。表に対するなんらかの変更処理とは、INSERT文、UPDATE文及びDELETE文といったデータ操作文を実行することです。 トリガーを定義するときには、その対象となるテーブル、トリガーが起動するきっかけとなる表に対する変更処理、トリガーの処理内容、トリガーの起動するタイミングなどを指定します。トリガーは指定したテーブルを監視し、指定した変更処理がテーブルに対して行われると、指定したタイミングで指定した処理を実行します。

ストアドプロシージャ
 ストアドプロシージャは、データベースに対する一連の処理を一つのプログラムにまとめ(PROCEDURE)、データベース管理システム(RDBMS)に保存(STORE)したものです。複雑なSQL文の呼び出しを、論理的に一つの処理単位にまとめて、簡単にその名前で呼び出せるようになっています。一つのプロシージャには、複数のSQL文が含まれていたり、繰り返しや条件分岐などの制御構造をもつこともあります。また、引数をとって処理をしたり、処理結果を返すこともできます。 ストアドプロシージャを利用することにより、ユーザは必要に応じてその名前と引数を指定して呼び出すだけでよく、データベースに対する複雑な処理はRDBMSに任せてしまうことができます。

トランザクション
 トランザクションは、次の4つの特性を満たさなければなりません。これら4つの特性は、それぞれの名前の頭文字をとってACID特性といいます。 原子性(ATOMICITY) トランザクションは、それ以上分割することのできない最小の作業単位であるということです。このため、トランザクションを構成する処理の結果がすべて有効になるか、またはすべて無効になるかのいずれかであるということです。 例えば、あるトランザクションに処理Aと処理Bがあるとします。処理Aと処理Bが正しく実行されたときは両方の処理結果が有効になります。しかし、処理Aだけ、または処理Bだけが正しく実行された場合は、両方の処理結果が無効になります。 一貫性(CONSISTENCY) トランザクションで処理されるデータは、実行前と後でデータの整合性を持ち、一貫したデータを確保しなければなりません。 隔離性(ISOLATION) 処理対象が同じデータである複数のトランザクションを一度に実行する場合は、それぞれのトランザクションは隔離された(独立された)状態でデータの変更を行わなければなりません。 トランザクションAとトランザクションBがデータを共有している場合、トランザクションAで変更中のデータを、トランザクションBで処理することは認められないということです。トランザクションAが終了し、データが確定した後であればトランザクションBでデータを処理することができます。 持続性(DURABILITY) トランザクションで処理されるデータの状態はトランザクションが終了するまで変化しないということです。トランザクションで処理を変更するSQL文を実行しますが、トランザクションの最後で変更を確定するまでは実際のデータの変更は行われないということです。