2.10.1.1 SET LOADコマンド

SET LOADでは、データをロードするためのオプションを設定できます。

構文

SET LOAD default | [options...] 

ここで

defaultは、ロード方法のプロパティがデフォルト値に戻ることを意味します。

optionsは、次のものを表します。

  • BATCH_ROWS|BATCHROWS <number_of_rows>

    データ・ロードはバッチで実行されます。各バッチに含める行数を指定します。

  • BATCHES_PER_COMMIT|BATCHESPERCOMMIT <batches_per_commit>

    number_of_batchesの処理後にコミットします。数値が0の場合、コミットはロードの最後に行われます。数値が0以上の場合は、COMMIT ONが設定されます。

  • CLEAN_NAMES [ TRANSFORM | TRANSFORM128 | QUOTE | QUOTE128 | UNIQUE ]

    表および列名をデータベース識別子に準拠させるルールを識別します。以前のリリースとの一貫性を保つために、名前はマッピングされる前に消去されます。CLEAN_NAMESおよびMAP_COLUMN_NAMESの両方が使用される場合、削除する名前を指定する必要があります。

    標準の識別子は次のとおりです。

    • 30文字または128文字を超えることはできません。
    • 予約語以外です。
    • 文字で始まり、文字、数字、または_$#の1つのみを含みます。
    • 大文字
    • 準拠していない名前は引用符で囲む必要があります。長さルールは常に適用されます。

    ノート:

    引用符に囲まれたデータは、名前が削除される前にヘッダー行の引用符が削除されます。

    TRANSFORM (default)

    名前が次のように変換されることを示します。

    • 名前は大文字です。
    • 名前が引用符で開始および終了している場合、引用符は削除されます。
    • 名前が予約語である場合、ドル記号($)が追加されます。
    • 数字または特殊文字で始まる名前には、接頭辞としてXが付けられます。
    • スペースとハイフンはアンダースコア(_)に置き換えられます。$および#文字は保持されます。
    • $と#以外の特殊文字は、シャープ記号(#)で置き換えられます。
    • 名前は、データベースMAX_STRING_SIZEに応じて30文字または128文字に切り捨てられます。
    • 名前が削除された後、列セット内の一意ではない名前には一意の連番が追加されます。切捨てが必要な場合でも、連番は維持されます。

    TRANSFORM (default)

    すべての変換ルールを適用します。名前は128文字です。

    QUOTE

    準拠していない名前は引用符で囲まれ、データベースMAX_STRING_SIZEに応じて30文字または128文字に短縮されます。

    QUOTE128

    準拠していない名前は引用符で囲まれます。名前は128文字です。

    UNIQUE

    ロード・サービスの以前のリリースとの互換性オプション。列セット内の一意ではない名前には一意の連番が追加されます。切捨ては指定されません。

  • COLUMN_SIZE|COLUMNSIZE|COLSIZE {ACTUAL|ROUND|ROUNDED|MAX|MAXIMUM}

    表の列サイズ戦略を作成します。

    ACTUALは、スキャン中に見つかった最大サイズを使用します。

    ROUND|ROUNDEDは、スキャン中に見つかった最大サイズより少し大きいサイズを使用します。

    MAX|MAXIMUMは、検出されたデータ型のデータベースの最大サイズを使用します。

  • COMMIT {ON|OFF}

    データ・コミットを有効化または無効化します。

  • DATE|DATE_FORMAT|DATEFORMAT format_mask 

    ロードされたすべてのDATEデータ型列のフォーマット。format_maskまたはDEFAULTを指定しないと、データベースのデフォルトが使用されます。

    DATE列では、書式が設定されていない、およびSCAN_ROWS = 0の場合、データは有効なマスクでスキャンされません。

    ERRORS {number_of_rows | UNLIMITED}|-1: 許可されるエラー行数を示します。

    この数を超えると、ロードが終了します。

    -1とUNLIMITEDはエラー制限がないことを示します。

    いずれかの行が失敗した場合、バッチ内のすべての行がエラーになります。

  • LOCALE { <language country> | DEFAULT | "" }

    ロケール言語、およびオプションで国を指定します。

    DEFAULT|"" : デフォルト・ロケールに設定されます。

  • MAP_COLUMN_NAMES|MAPCOLUMNNAMES|MAPNAMES { OFF| (<file-col-name>=<table-col-name>,...) }

    ファイルに指定された列名から表の列名へのマッピングを提供します。

  • METHOD INSERT

    データ・ロードに使用する方法。

  • SCAN_ROWS|SCANROWS|SCAN <1-5000> 

    CREATE TABLEの生成のためにスキャンする行数を識別します。デフォルトは100行です。

  • TIMESTAMP|TIMESTAMP_FORMAT|TIMESTAMPFORMAT

    ロードされるすべてのTIMESTAMPデータ型列の形式。format_maskまたはDEFAULTを指定しないと、データベースのデフォルトが使用されます。TIMESTAMP列では、書式が設定されていない、およびSCAN_ROWSが0でない場合、データは有効なマスクでスキャンされます。

  • TIMESTAMPTZ|TIMESTAMPTZ_FORMAT|TIMESTAMPTZFORMAT

    ロードされるすべてのTIMESTAMPTZデータ型列の形式。format_maskまたはDEFAULTを指定しないと、データベースのデフォルトが使用されます。TIMESTAMPTZ列では、書式が設定されていない、およびSCAN_ROWSが0でない場合、データは有効なマスクでスキャンされます。

  • TRUNCATE {OFF|ON}

    「切捨て」をオンにすると、ロード前に表が切り捨てられます

  • UNKNOWN_COLUMNS_FAIL|UNKNOWNCOLUMNSFAIL|UNKNOWNFAIL {ON|OFF}

    ON: ファイルの列を表の列にマップできない場合、ロードを終了します。

    OFF: ファイルの列を表の列にマップできない場合でも、ロードの続行を許可します。