UDTTransformsOffフラグをYに設定してPeriodStructOnフラグをオンにします。
UDTTransformsOffフラグがNに設定され、PeriodStructOnフラグがYに設定されると、Teradata Databaseによりエラーが返されます。
ArrayTransformsOffフラグはUDTTransformsOffフラグとPeriodStructOnフラグから独立して設定できます。
以下のテーブルに、フラグ設定の組み合わせに関する情報を示します。
UDTTransformsOff | PeriodStructOn | ArrayTransformsOff | 説明 | 適用先 |
---|---|---|---|---|
N | N | N |
|
CLI. デフォルトのモード。 |
N | N | Y |
|
.NET、ODBC、およびサード パーティ製または社内のCLIアプリケーション。 |
N | Y | NまたはY | Teradata Databaseによりエラーが返されます。 | |
Y | N | Y |
|
.NET Data Providerはこの組み合わせを使用して、UDTのプロバイダー固有のサポートとUDTを.NET-オブジェクトのマッピングに追加します。 アプリケーションはUDTTransformのオンとオフ選択します。 |
Y | N | N |
|
サード パーティ製CLIベース アプリケーション。 既存のアプリケーションの中には、パス スルーSQLをサポートしているものがあります。つまり、これらのアプリケーションは特定の物理データベース モデルに制限されません。 |
Y | Y | Y |
|
JDBC。 |
Y | Y | N |
|
サード パーティ製CLIベース アプリケーション。 既存のアプリケーションの中には、パス スルーSQLをサポートしているものがあります。つまり、これらのアプリケーションは特定の物理データベース モデルに制限されません。 |
変換オフでのARRAYデータ値の形式
ArrayTransformsOffフラグがYに設定された1次元または多次元のARRAYデータ値は、次に示す各種のデータ パーセルで表現されます。
- IndicData (パーセル フレーバー番号68)
- MultipartIndicData (パーセル フレーバー番号142)
- Record (標識モード) (パーセル フレーバー番号10)
- MultipartRecord (パーセル フレーバー番号144)
ARRAYデータ型用の1つのNULL標識ビットは、NULL標識ビットの配列内にあります。
以下のテーブルは、配列値のワイヤプロトコル表現についての説明です。
アイテム | 説明 |
---|---|
2バイト(16ビットSMALLINT)の長さフィールド | このフィールド自体の長さを除いた長さ(バイト単位)。 |
4バイト(32ビットの符号無し整数) | 現在のカーディナリティ。返される配列構成要素の総数を示します。 |
Elements-Null-Indicatorビット | 可変長のバイト配列。 長さ = (現在のカーディナリティ * (構成要素ごとのビット数) + 7) / 8 配列構成要素がUDTで、UDTTransformsOffフラグがYに設定される場合、この構成要素のElements-Null-IndicatorビットはUDT用の1つのNULL標識ビットと、それに続くUDTの属性ごとの1つのNULL標識ビットで深さ優先順で左から右に拡張されます。 配列構成要素がPERIODデータ型で、PeriodStructOnフラグがYに設定される場合、この構成要素のElements-Null-IndicatorビットはPERIODデータ型用の1つのNULL標識ビットと、それに続くBEGIN用の1つのNULL標識ビットと、END用のもう1つのNULL標識ビットで拡張されます。 |
配列構成要素のデータ | 各構成要素の実際のデータ値(行優先順)。 配列構成要素がUDTで、UDTTransformsOffフラグがYに設定されている場合、各構成要素の値はUDTの各属性のデータ値で深さ優先順で右から左に拡張されます。 配列構成要素がPERIODデータ型で、PeriodStructOnフラグがYに設定されている場合、各構成要素の値はBEGIN値とそれに続くEND値によって拡張されます。 |
ArrayTransformsOffフラグがYに設定されているヌル配列の場合、その配列のNULL標識ビットが設定され、2バイトの長さフィールドはゼロに設定されます。それ以外の値は送信されません。