目次

Search

  1. はじめに
  2. Designerの使用
  3. ソースに関する作業
  4. フラットファイルに関する作業
  5. ターゲットに関する作業
  6. マッピング
  7. マップレット
  8. マッピングパラメータおよび変数
  9. ユーザー定義関数に関する作業
  10. デバッガの使用
  11. データリネージの表示
  12. オブジェクトの比較
  13. ビジネスコンポーネントの管理
  14. キューブと次元の作成
  15. マッピングウィザードの使用
  16. データタイプリファレンス
  17. Webブラウザの設定

Designerガイド

Designerガイド

NULLキャラクタの処理

NULLキャラクタの処理

固定長ファイルソースに、1バイトまたはマルチバイトのNULLキャラクタを指定することができます。固定長ソースファイルを読み込む場合、はこれらの文字を使用してカラムがNULLかどうかを判断します。固定長ターゲットファイルに書き込む場合、はこれらの文字を使用してNULL値を表します。
以下の表に、が[Nullキャラクタ]および[Nullの連続を許可]プロパティを使用してカラムがNULLであるかどうかを判断する方法を示します。
NULLキャラクタ
Nullキャラクタを繰り返す
ソースおよびルックアップから読み込む際のIntegration Serviceの動作
ターゲットに書き込む際のIntegration Serviceの動作
バイナリ
無効
カラム内の最初のバイトがバイナリNULLキャラクタである場合、そのカラムはNULLです。Integration Serviceは、カラムの残りの部分をテキストデータとして読み込んで、カラムのバイト長が揃っているかどうかを判断し、シフト依存のコードページについてはシフトの状態を追跡します。カラム内のデータが不揃いであれば、Integration Serviceはその行をスキップして、対応するエラーメッセージと共にセッションログに書き込みます。
Integration Serviceは、フィールドの先頭に1つのバイナリNULLキャラクタを1つ入力してNULL値を表します。
NULLキャラクタを書き込んだ後にバイトが余っていれば、Integration Serviceはカラムの空きを1バイトのスペースで埋めます。
非バイナリ
無効
カラム内の最初の文字がNULLキャラクタであれば、そのカラムはNULLです。Integration Serviceは、カラムの残りの部分を読み込んでカラムのバイト長が揃っているかどうかを判断し、シフト依存のコードページについてはシフトの状態を追跡します。カラム内のデータが不揃いであれば、Integration Serviceはその行をスキップして、対応するエラーメッセージと共にセッションログに書き込みます。
Integration Serviceは、フィールドの先頭に1つのNULLキャラクタを入力してNULL値を表します。
マルチバイトNULLキャラクタを指定した場合で、NULLキャラクタを書き込んだ後に余分なバイトが残っている場合、Integration Serviceは1バイト分のスペースでカラムを埋めます。カラムがNULLキャラクタとして指定されたマルチバイト文字より小さいために、NULLキャラクタをカラムに入れられない場合は、セッションは初期化で失敗します。
バイナリ
有効
指定されたバイナリNULLキャラクタのみがカラム内に含まれている場合、そのカラムはNULLです。次のカラムは、コードページの初期のシフト状態を継承します。
Integration Serviceは、ターゲットフィールドに書き込めるだけのバイナリNULLキャラクタを書き込みます。
非バイナリ
有効
連続するNULLキャラクタでカラムがちょうど埋まっていて、1バイトも残っていなければ、そのカラムはNULLです。例えば、2バイトの連続するNULLキャラクタを指定した場合、5バイトのカラムはNULLではありません。
シフト依存のコードページでは、シフトバイトはカラム内のNULLバイトに影響しません。カラムの冒頭または末端にシフトバイトが含まれ、連続するNULLキャラクタが余分なバイトを出さずにぴったりとカラムに収まっている場合、このカラムはNULLです。
連続する非バイナリNULLキャラクタを使用している場合は、1バイトのNULLキャラクタを指定します。そうすることにより、連続するNULLキャラクタでカラムをちょうど埋めることができます。
Integration Serviceは、ターゲットフィールドに書き込めるだけのNULLキャラクタを書き込みます。
マルチバイトNULLキャラクタを指定した場合で、NULLキャラクタを書き込んだ後に余分なバイトが残っている場合、Integration Serviceは1バイト分のスペースでカラムを埋めます。
カラムがNULLキャラクタとして指定されたマルチバイト文字より小さいために、NULLキャラクタをカラムに入れられない場合は、セッションは初期化で失敗します。