OceanBase logo

OceanBase

トランザクション処理、分析、AIワークロードに最適な分散データベース

デプロイを自由に

OceanBase Cloud

OceanBaseの導入とスケーリングを最適化

エンタープライズ版

自社インフラ上での運用・管理に対応

オープンソース版を試す

コミュニティ版

開発者向けオープンソース分散データベース

OceanBase seekdb

AIネイティブなオープンソースの検索データベース

顧客事例

さまざまな業界の企業による導入事例を紹介します。

さらに見る
利用シーン別

あらゆるシナリオに対応するOLTP

ハイブリッドクラウドソリューション

大容量ストレージデータベースのコスト削減

リアルタイム分析混合ワークロード

複数インスタンスの統合

ドキュメント

会社概要

OceanBaseの企業情報、パートナーシップ、そして信頼性・セキュリティへの取り組みについて紹介します。

OceanBaseについて

法的情報

お問い合わせ

日本 - 日本語
International - English
中国站 - 简体中文
クラウドで始める

トランザクション処理、分析、AIワークロードに最適な分散データベース

デプロイを自由に

OceanBase Cloud

OceanBaseの導入とスケーリングを最適化

エンタープライズ版

自社インフラ上での運用・管理に対応

オープンソース版を試す

コミュニティ版

開発者向けオープンソース分散データベース

OceanBase seekdb

AIネイティブなオープンソースの検索データベース

顧客事例

さまざまな業界の企業による導入事例を紹介します。

さらに見る
利用シーン別

あらゆるシナリオに対応するOLTP

ハイブリッドクラウドソリューション

大容量ストレージデータベースのコスト削減

リアルタイム分析混合ワークロード

複数インスタンスの統合

OceanBaseの企業情報、パートナーシップ、そして信頼性・セキュリティへの取り組みについて紹介します。

OceanBaseについて

法的情報

お問い合わせ

クラウドで始める
编组
すべての製品
    • データベース
    • アイコンOceanBaseデータベース
アイコン

OceanBaseデータベース

V4.3.5

    OceanBase logo

    AI時代を支える分散データベース

    日本 - 日本語
    International - English
    中国站 - 简体中文
    プロダクト
    OceanBase Cloudエンタープライズ版コミュニティ版OceanBase seekdb
    会社概要
    OceanBaseについて法的情報お問い合わせ
    公式アカウント
    ConnpassXQiitaLumaGitHub

    © OceanBase 2026. All rights reserved

    クラウドサービス契約個人情報保護ポリシーセキュリティ
    お問い合わせ
    ドキュメントフィードバック
    1. ホーム
    2. OceanBaseデータベース
    3. V4.3.5
    アイコンOceanBaseデータベース
    V 4.3.5
    • V 4.3.5

    変動配列

    最終更新日:2026-04-15 06:09:05  更新
    シェア
    このページの内容
    シェア

    変動配列(Varrayとも呼ばれ、Variable Arrayの略称)は、順序付き要素を格納する集合であり、すべての要素が同一のデータ型を持ち、各要素のインデックスはその配列内での位置に対応します。

    適用対象

    この内容はOceanBaseデータベースEnterprise Editionにのみ適用されます。OceanBaseデータベースCommunity EditionではMySQLモードのみが提供されています。

    変動配列にはサイズの制限があります。変動配列を作成する際には、変動配列の最大長を指定する必要があります。

    変動配列を作成するための簡単な構文は以下のとおりです:

    TYPE varray_name IS VARRAY( size ) OF element_type [ NOT NULL ] ;
    

    ここで、varray_name は変動配列のデータ型名、size は正の整数で、収容可能な配列要素の最大数を表します。各要素のデータ型は element_type です。デフォルトでは、要素はNULL値を取ることができますが、そうでない場合は NOT NULL を使用して制限する必要があります。

    例:変動配列の作成

    obclient> DECLARE
      TYPE players IS VARRAY(5) OF VARCHAR2(20);
      team PLAYERS := players('Andrew', 'Barton', 'Conrad', 'Dick','Edward');
      PROCEDURE print_team (heading VARCHAR2) IS
      BEGIN
        DBMS_OUTPUT.PUT_LINE(heading);
        FOR i IN 1..5 LOOP
          DBMS_OUTPUT.PUT_LINE(i || '.' || team(i));
        END LOOP;
    
        DBMS_OUTPUT.PUT_LINE('---');
      END;
    
    BEGIN
      print_team('First Team:');
      team(2) := 'Albert';
      team(5) := 'George';
      print_team('Second Team:');
      team := players('Charles', 'Carl', 'James', 'Gary','Brian');
      print_team('Third Team:');
    END;
    /
    Query OK, 0 rows affected
    
    First Team:
    1.Andrew
    2.Barton
    3.Conrad
    4.Dick
    5.Edward
    ---
    Second Team:
    1.Andrew
    2.Albert
    3.Conrad
    4.Dick
    5.George
    ---
    Third Team:
    1.Charles
    2.Carl
    3.James
    4.Gary
    5.Brian
    ---
    

    変動配列は、以下のシナリオに適しています:

    • 要素の最大数が既知の場合。

    • 通常、要素へのアクセスは順番に行われます。

    変動配列はすべての要素を同時に格納または検索しなければならないため、多数の要素があるシナリオにはあまり適していません。

    前のトピック

    関連配列
    最後

    次のトピック

    ネストテーブル
    次