16.20 - 文字データのインポート処理 - Teradata Database - Teradata Vantage NewSQL Engine

Teradata Vantage™ SQLデータ操作言語

Product
Teradata Database
Teradata Vantage NewSQL Engine
Release Number
16.20
Release Date
2019年3月
Content Type
プログラミング リファレンス
Publication ID
B035-1146-162K-JPN
Language
日本語 (日本)

次のテーブル定義があるとします。

     CREATE TABLE table_1 (
       cunicode  CHARACTER(10) CHARACTER SET  UNICODE,
       clatin    CHARACTER(10) CHARACTER SET LATIN,
       csjis     CHARACTER(10) CHARACTER SET KANJISJIS,
       cgraphic  CHARACTER(10) CHARACTER SET GRAPHIC,
       cgraphic2 CHARACTER(10) CHARACTER SET GRAPHIC);

セッション文字集合がKanjiShift-JISの場合に、次のリクエストを実行依頼したとします。

     USING
      cunicode  (CHARACTER(10)),
      clatin    (CHARACTER(10)),
      csjis     (CHARACTER(10)),
      cgraphic  (GRAPHIC(10)),
      cgraphic2 (CHARACTER(10) CHARACTER SET GRAPHIC))
     INSERT INTO table_1(:cunicode, :clatin, :csjis, :cgraphic,
                         :cgraphic2);
USINGリクエスト修飾子は、データ パーセルに以下が含まれていることを示しています。
  • Unicode列の10 KanjiShift-JISバイト
  • Latin列に10バイト
  • KanjiSJIS列に10バイト
  • 1番目のGRAPHIC列に20バイト
  • 2番目のGRAPHIC列に20バイト

データのパーセル内の個々のフィールドは、client form-of-useから、サーバーの使用形式に変換されます。変換後に、最初の3つのフィールドはユニコード リテラルとして扱われ、最後の2つのフィールドはGRAPHICリテラルとして扱われます(<Teradata Vantage™データ タイプおよびリテラル、B035-1143>を参照)。

次に、列データが<Teradata Vantage™データ タイプおよびリテラル、B035-1143>でリストされているルールに従って、暗黙の変換を使用するターゲット フィールドに変換されます。

変換の処理は、以下のテーブルで説明します。

ステップ プロセス
  サーバーの使用形式に変換されるバイト数 扱われるリテラル 変換後の文字データ型 格納先の列
1 最初の10 (1 - 10) UNICODE なし cunicode
2 次の10 (11 -20) UNICODE LATIN clatin
3 次の10 (21 -30) UNICODE KANJISJIS csjis
4 次の20 (31 -50) GRAPHIC GRAPHIC cgraphic
5 最後の20 (51 - 70) GRAPHIC GRAPHIC cgraphic2

USING句の意味は、セッションの文字設定とは独立していることに注意してください。