Oracle では、ストアド プロシージャは、特定の機能を完了するために使用され、データベースに保存される一連の SQL ステートメントです。ストアド プロシージャは、開発者の作業負荷を軽減するために繰り返し使用できますが、トリガーが提供されています。データベースからプログラマーおよびデータへのアナリストがデータの整合性を確保する 1 つの方法は、テーブル イベントに関連する特別なストアド プロシージャを使用することです。
このチュートリアルの動作環境: Windows 7 システム、Oracle 11g バージョン、Dell G3 コンピューター。
Oracle のトリガーとは
トリガーは、データの整合性を確保するために、データベースによってプログラマとデータ アナリストに提供されます。テーブル イベントに関連する特別なストアド プロシージャ。イベントによって引き起こされます。
トリガーは、特定のイベントがトリガーされたときに暗黙的に実行される SQL ステートメントであり、パラメーターを受け取ることはできません。 Oracle トリガーは、データベースに対する挿入、更新、削除操作、または Oracle データベース内のビューに対する同様の操作をトリガーします。また、データベースのクローズやオープンなどの一部のシステム イベントもトリガーします。
トリガーの分類は何ですか?
(1)、データ操作言語 (DML) トリガー: テーブル上に作成され、DML 時間によってトリガーされるトリガー;
(2)、ではなく) トリガー: 作成日ビュー。ビューに対する追加、変更、削除操作を置き換えるために使用されます。
(3) データ定義言語 (DDL) トリガー: スキーマで定義され、トリガーとなるイベントはデータベース オブジェクトの作成と変更です。
(4) データベースシステムトリガー:データベース全体に定義されており、データベースの起動や停止などのデータベースの動作をトリガー時刻とします。
トリガーのコンポーネントは何ですか?
(1) トリガーされたイベント: つまり、どのような状況でトリガーがトリガーされるか (挿入、更新、削除など)。
(2) トリガー時間: つまり、トリガーがトリガー イベントの前 (before) かトリガー イベントの後 (after) であるか、またトリガーされたイベントとトリガー本体の順序も示します。
(3) トリガー自体: イベントがトリガーされたときにトリガーによって実行される操作 (例: pl/sql ブロック)。
(4) トリガー頻度: トリガーに定義されたアクションが実行される回数を示します。つまり、ステートメントレベルのトリガーと行レベルのトリガーです。ステートメントレベルのトリガーとは、イベントの発生時にトリガーが 1 回だけ実行されることを意味します。行レベルのトリガーの場合、イベントが発生すると、操作の影響を受けるデータの行ごとにトリガーが個別に実行されます。
oracle のストアド プロシージャとは
ストアド プロシージャ (ストアド プロシージャ) は、大規模なデータベース システム内のプロシージャのグループであり、完全な特定の関数です。一連の SQL ステートメントはデータベースに保存されます。初めてコンパイルした後、再度呼び出すときに再度コンパイルする必要はありません。ユーザーはストアド プロシージャの名前を指定してストアド プロシージャを呼び出し、パラメーターを指定します (ストアド プロシージャにパラメーターがある場合)。
簡単に言うと、これは 1 つのことを具体的に実行する SQL ステートメントです。
ストアド プロシージャは繰り返し使用できるため、開発者の作業負荷が軽減されます。
Oracle データベースのストアド プロシージャは、procedure です。
ストアド プロシージャを作成する理由
1. 高効率
ストアド プロシージャは、一度コンパイルされるとデータベースに保存され、直接実行するたびに保存されます。通常の SQL ステートメントを他の場所 (メモ帳など) に保存したい場合は、実行前に分析してコンパイルする必要があります。したがって、ストアドプロシージャの方が効率的だと思います。
2. ネットワーク トラフィックの削減
コンパイルされたストアド プロシージャはデータベースに配置され、リモートで呼び出すときに大量の文字列型 SQL ステートメントを送信しません。
3. 高い再利用性
ストアド プロシージャは特定の関数用に作成されることが多く、この特定の関数を完了する必要がある場合は、ストアド プロシージャを再度呼び出すことができます。
4. 高い保守性
機能要件に小さな変更がある場合、以前のストアド プロシージャを変更する方が簡単で、労力もかかりません。
5. 高いセキュリティ
特定の機能を完了するストアド プロシージャは、通常、特定のユーザーのみが使用でき、使用 ID 制限があるため、安全性が高まります。
推奨チュートリアル: 「Oracle チュートリアル 」
以上がOracle のトリガーとストアド プロシージャとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。