sql >> データベース >  >> RDS >> Oracle

OracleDatabaseのPL/SQLパッケージの概要

    これまで、データベースカーソル、PL / SQL関数、ストアドプロシージャ、トリガーなどの名前付きPL / SQLブロックのほとんどを見てきましたが、今度は、私のYouTubeチャネルで最も要求の厳しいPL/SQLチュートリアルであるPL/に移ります。 SQLパッケージ。

    OracleDatabaseのPL/SQLパッケージとは何ですか?

    パッケージはデータベースに格納されたライブラリであり、関連するPL/SQLオブジェクトを1つの名前でグループ化できます。つまり、パッケージは関連するPL/SQLオブジェクトの論理グループです。パッケージにはPL/SQLブロックという名前が付けられています。これは、パッケージがデータベーススキーマに永続的に格納され、プログラムで参照または再利用できることを意味します。

    PL/SQLパッケージの定義
    パッケージはデータベースに格納されたライブラリであり、関連するPL/SQLオブジェクトを1つの名前でグループ化できます。

    パッケージに含まれる内容は何ですか?

    パッケージには、

    などの複数のデータベースオブジェクトを保持できます。
    • ストアドプロシージャ
    • PL/SQL関数
    • データベースカーソル
    • タイプ宣言と
    • 変数

    情報バイト
    パッケージに含まれるすべてのオブジェクトは、まとめてパッケージ要素と呼ばれます。

    パッケージアーキテクチャ

    PL/SQLパッケージは2つの部分に分かれています。

    1. パッケージ仕様。ヘッダーとも呼ばれます。
    2. パッケージ本体

    これらの部分は両方とも、データディクショナリに別々に保存されます。パッケージの仕様は必須の部分ですが、パッケージの本体はオプションですが、本体をパッケージに提供することをお勧めします。

    パッケージ仕様

    パッケージ仕様は、パッケージヘッダーとも呼ばれます。これは、すべてのパッケージ要素の宣言を配置するセクションです。このセクションでここで宣言する要素はすべて公開されており、パッケージの外部で参照できます。

    情報バイト
    このセクションでは、パッケージ要素のみを宣言しますが、それらは定義しません。また、これはパッケージの必須セクションです。

    パッケージ仕様の構文

    CREATE OR REPALCE PACKAGE pkg_name IS
    	Declaration of all the package element…;
    END [pkg_name]; 
    

    パッケージ本体

    パッケージ本体では、プログラミングによって仕様ですでに宣言されているすべてのパッケージ要素に実際の構造を提供します。または、パッケージ本体には、パッケージ仕様にリストされている要素の実装が含まれていると言えます。

    パッケージ仕様とは異なり、パッケージ本体には、変数の宣言とすべてのパッケージ要素の定義の両方を含めることができます。 PL / SQL関数、カーソル、ストアドプロシージャなど、パッケージ仕様には含まれていないがパッケージ本体にコーディングされているパッケージ要素は、プライベートパッケージ要素と呼ばれます。 したがって、パッケージの外部で参照することはできません。

    パッケージ本体の構文

    CREATE OR REPALCE PACKAGE BODY pkg_name IS
    	Variable declaration;
    	Type Declaration;
    BEGIN
    	Implementation of the package elements…
    END [pkg_name];
    

    上記の両方の構文の詳細については、同じトピックに関する私のYouTubeビデオを参照してください。

    OracleDatabaseのPL/SQLパッケージの概要は以上です。あなたは私のソーシャルメディアまたは電子メールであなたのフィードバック、提案または質問を私に送ることができます。連絡先の詳細については、ここをクリックしてください。ありがとう&素晴らしい一日を!


    1. 値が長すぎて文字が変化しない(N)

    2. Javaで接続プールを行う方法は?

    3. MySQLWorkbenchの上位の代替案

    4. テキストを含むSQLServerIDENTITY列