SQL プロシージャの作成と編集
物理モデルの作成 への移動
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 を一度に処理および呼び出すことができます。詳細は、「パッケージの作成と編集」を参照してください。
このセクションには、次のトピックも含まれています。
- CREATE TABLE 文のプリ SQL/ポスト SQL の作成と編集
- プロシージャの作成と編集
- スクリプト プロシージャの作成
- サブモデルまたはモデルへのスクリプト プロシージャの適用
- 再利用可能なプロシージャの作成
- ユーザー定義スクリプト プロシージャの作成
- ユーザー定義テンプレート プロシージャの作成
- テーブルへの再利用可能なプロシージャのバインド
- SQL プロシージャの作成
- SQL プロシージャのインポート
- SQL プロシージャのエクスポート