VARRAY (可変サイズ配列) - PLSQL のコレクション

Linda Hamilton
リリース: 2024-10-03 06:23:30
オリジナル
528 人が閲覧しました

VARRAY (Variable-size array) - Collection in PLSQL

PL/SQL では、VARRAY (可変サイズ配列) は、固定数の要素を格納できるコレクションのタイプです。 VARRAY 内の各要素は順次に格納され、すべての要素は同じデータ型です。

VARRAY の特徴:

  1. 固定最大サイズ: VARRAY を定義するときは、VARRAY が保持できる要素の最大数を指定します。この制限を超えることはできません。

  2. シーケンシャル: VARRAY 内の要素は、インデックス 1 から始まる特定の順序で格納され、アクセスされます。

  3. 同種: VARRAY 内のすべての要素は同じデータ型である必要があります。

  4. 高密度のインデックス: VARRAY は常に高密度に設定されます。これは、インデックス間にギャップがないことを意味します。

  5. Oracle データベースに格納: データベース列で使用される場合、VARRAY はテーブルの行データとともにインラインで格納されます。

PL/SQL の VARRAY の構文

  1. VARRAY 型の宣言

最初に VARRAY 型を定義し、保持できる要素の数と要素のデータ型を指定します。

TYPE varray_name は element_type の VARRAY(max_size) です;

varray_name: VARRAY 型の名前。

max_size: VARRAY に格納できる要素の最大数。

element_type: VARRAY に格納される要素のデータ型。

  1. VARRAY の定義と初期化

VARRAY 型を宣言したら、その型の変数を宣言し、値で初期化できます。

宣言
TYPE 従業員_varray は VARRAY(5) OF VARCHAR2(30); -- 最大サイズ 5
の VARRAY 型宣言 従業員名 従業員_varray := 従業員_varray('ジョン', 'ジェーン'); -- 2 つの要素で初期化します
始めてください
-- VARRAY
を使用するステートメント 終了;

VARRAY の操作:

VARRAY に対して実行できる一般的な操作をいくつか示します。

EXTEND(n): VARRAY の末尾に n 個の要素を追加します。

COUNT: VARRAY 内の現在の要素数を返します。

TRIM(n): VARRAY の末尾から n 個の要素を削除します。

FIRST と LAST: VARRAY 内の最初と最後のインデックスを返します。

例: VARRAY の宣言と使用

宣言
-- VARCHAR2(50)
の要素を最大 5 つ保持できる VARRAY 型を宣言します。 TYPE 従業員_varray は VARRAY(5) OF VARCHAR2(50);

-- Declare a variable of this VARRAY type and initialize it with two values
employee_names employee_varray := employee_varray('John', 'Jane');
ログイン後にコピー

開始
-- VARRAY
に要素を追加します。 従業員名.EXTEND(3); -- 配列をさらに 3 要素拡張します
従業員名(3) := 'サム';
従業員名(4) := 'ピーター';
従業員名(5) := 'ルーシー';

-- Print all the names in the VARRAY
FOR i IN 1..employee_names.COUNT LOOP
    DBMS_OUTPUT.PUT_LINE('Employee ' || i || ': ' || employee_names(i));
END LOOP;

-- Trim 1 element from the end of the VARRAY
employee_names.TRIM(1);
DBMS_OUTPUT.PUT_LINE('After trimming 1 element:');

-- Print remaining names in the VARRAY
FOR i IN 1..employee_names.COUNT LOOP
    DBMS_OUTPUT.PUT_LINE('Employee ' || i || ': ' || employee_names(i));
END LOOP;
ログイン後にコピー

終了;
/

説明:

  1. VARRAY 型宣言: VARCHAR2(50) 型の要素を最大 5 つ保持できる VARRAY 型employee_varray を宣言します。

  2. 初期化:employee_names 変数を 2 つの名前「John」と「Jane」で初期化します。

  3. EXTEND: EXTEND(3) メソッドを使用して VARRAY を拡張し、さらに 3 つの要素を保持し、合計 5 つの要素のためのスペースを確保します。

  4. 要素へのアクセス: 新しい位置 (3 ~ 5) に値を割り当て、ループを使用してすべての要素を出力します。

  5. TRIM: TRIM(1) メソッドは、VARRAY から最後の要素を削除し、要素の数を 5 から 4 に減らすために使用されます。

出力:

従業員 1: ジョン
従業員 2: ジェーン
従業員 3: サム
従業員 4: ピーター
従業員 5: ルーシー
1 つの要素をトリミングした後:
従業員 1: ジョン
従業員 2: ジェーン
従業員 3: サム
従業員 4: ピーター

キーポイント:

VARRAY は、コレクションの最大サイズが事前にわかっている場合に便利です。

順次アクセス: VARRAY 内の要素は、インデックスを使用してアクセスされます。

拡張とトリミング: EXTEND と TRIM を使用して、VARRAY に要素を動的に追加または削除できます。

以上がVARRAY (可変サイズ配列) - PLSQL のコレクションの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート