配列データ・タイプのフィーチャー

配列データ・タイプの多くのフィーチャーにより、SQL PL ロジックを理想に近い形で使用できます。

配列タイプとは、別のデータ・タイプの配列として定義されているデータ・タイプのことです。

すべての配列タイプには最大カーディナリティーがあり、これは CREATE TYPE ステートメントで指定されます。 A が最大カーディナリティー M を持つ配列タイプである場合、タイプ A の値のカーディナリティーは 0 から M まで (両端を含む) の値となります。 C などのプログラミング言語における配列の最大カーディナリティーとは異なり、SQL 配列の最大カーディナリティーはそれらの物理表現とは関連していません。 むしろ、最大カーディナリティーは、添え字が境界内にあることを確実にするため、実行時にシステムにより使用されます。 配列の値を示すために必要なメモリー量は、通常、その配列タイプの最大カーディナリティーにではなく、その配列のカーディナリティーに比例します。

配列が参照されているとき、配列のすべての値はメイン・メモリーに格納されます。 そのため、大量のデータを含む配列は、大量のメイン・メモリーを消費します。

配列エレメント値は、エレメントの対応する索引値を指定すると取り出せます。

配列データ・タイプが役に立つのは、単一のデータ・タイプの値の集合を保管したい場合です。 この値の集合を使用して、ルーチンへの値の受け渡しを大幅に簡略化できます。複数の、場合によってかなり多くのパラメーターを個別に受け渡す代わりに、単一の配列値を受け渡すことができるからです。

配列データ・タイプは、連想配列データ・タイプとは異なります。 配列データ・タイプは値のシンプルなコレクションであるのに対して、連想配列は概念上は複数の配列からなる配列に似ています。 つまり連想配列は、配列エレメントには 1 次索引がアクセスし、副配列エレメントには副索引がアクセスするといったように、ゼロ個以上の副配列エレメントが含まれる順序付けされた配列です。