SQL プロシージャの作成と編集

提供: ER/Studio Data Architect
移動先: 案内検索

物理モデルの作成 への移動

SQL プロシージャは、PL/SQL の再利用可能なブロックで、ユーザーが作成してデータベース内に保存されます。アプリケーションからプロシージャを呼び出して、コード開発、デバッグ、および保守作業を効率化できます。プロシージャを使用してデータベースのセキュリティを強化することもできます。このためには、ユーザーがテーブルに直接アクセスするのではなく、ユーザーにテーブルへの実行権限を付与するプロシージャを記述します。

ストアド プロシージャには、プログラム フロー、ロジック、およびデータベース クエリーを含めることができます。また、パラメータを受け入れおよび生成したり、1 つまたは複数の結果セットを返したり、値を返すこともできます。

SQL 文を使用して実行できる作業以外にも、ストアド プロシージャでは次のようなことが可能です。

  • 一連の SQL 文を、1 つのストアド プロシージャ内で実行する
  • 他のストアド プロシージャを参照することで、複雑な SQL 文を分割して単純化する
  • SQL 文を個別に実行するよりも高速に実行できる。作成されたストアド プロシージャはサーバー上でプリコンパイルされるためです。
  • メモリにキャッシュされるため、より高速に実行できる

SQL プロシージャを実装するには、さまざまな方法があります。

  • プリ SQL およびポスト SQL。オブジェクトの作成前後に実行される SQL です。詳細は、「CREATE TABLE 文のプリ SQL/ポスト SQL の作成と編集」を参照してください。
  • スクリプト プロシージャおよびテンプレート プロシージャ。アプリケーション コードをデータベースに保存し、CALL 文を使用して任意のアプリケーションで使用できます。詳細は、「プロシージャの作成と編集」を参照してください。
  • スクリプト トリガーおよびテンプレート トリガー。さまざまな用途に使用できます: 参照整合性ルールの実装、テーブル データへのビジネス ルールの実装、テーブルの更新時に別のテーブル情報をシンクロ、更新の発生時に DBMS 外部のアクションを開始、一部の操作タイプ(UPDATE など)が実行されないようにするなど。詳細は、「トリガーの作成と編集」を参照してください。
  • ファンクション。SQL 文の内部から複数の SQL 文を実行できます。詳細は、「ファンクションの作成と編集」を参照してください。
  • パッケージ。SQL 文の処理に必要なすべてのコードを 1 つのソース ファイルにまとめて保存できます。パッケージを使用して、多数の SQL を一度に処理および呼び出すことができます。詳細は、「パッケージの作成と編集」を参照してください。

このセクションには、次のトピックも含まれています。

関連項目