SnowConvert AI - Teradata変換設定

一般的な変換設定

一般結果設定

一般結果設定サブページ

  1. 依存関係が欠落しているオブジェクトにコメントする: 依存関係が欠落しているノードにユーザーがコメントするかどうかを示すフラグ。

  2. EWI コメント生成(エラー、警告、問題)を無効にする: 変換後のコードに EWIs のコメント(エラー、警告、問題)を生成しないかどうかを示すフラグ。デフォルトはfalseです

  3. ストアドプロシージャ内の SQL ステートメントに対して XML タグを生成する: ストアドプロシージャ内の SQL ステートメント SELECT、 INSERT、 CREATE、 DELETE、 UPDATE、 DROP、 MERGE を変換後のコードにタグ付けするかどうかを示すフラグ。この機能は、移行されたコードのステートメントを簡単に識別するために使用されます。これらのステートメントを XML のようなタグでラッピングすると、他のプログラムがステートメントをすばやく見つけて取り出すことができるようになります。装飾されたコードは次のようになります。

    //<SQL_DELETE
    EXEC(DELETE FROM SB_EDP_SANDBOX_LAB.PUBLIC.USER_LIST,[])
    //SQL_DELETE!>
    
    Copy
  4. 期間データ型の定義と使用を開始と終了のData-Timeフィールドに分離する: このフラグは、 PERIOD データ型の使用を、元の期間の開始値と終了値を保持する2つの別個のフィールド DATETIME としてツールに移行することを示すために使用されます。このフラグを使用して期間フィールドまたは関数が移行される場合はいつでも、この変更について警告するために SSC-EWI-TD0053 が追加されます。

    入力コード:

    CREATE TABLE myTable(
       col1 PERIOD(DATE),
       col2 VARCHAR(50),
       col3 PERIOD(TIMESTAMP)
    );
    
    Copy

    出力コード:

    CREATE OR REPLACE TABLE myTable (
       col1 VARCHAR(24) !!!RESOLVE EWI!!! /*** SSC-EWI-TD0053 - SNOWFLAKE DOES NOT SUPPORT THE PERIOD DATATYPE, ALL PERIODS ARE HANDLED AS VARCHAR INSTEAD ***/!!!,
       col2 VARCHAR(50),
       col3 VARCHAR(58) !!!RESOLVE EWI!!! /*** SSC-EWI-TD0053 - SNOWFLAKE DOES NOT SUPPORT THE PERIOD DATATYPE, ALL PERIODS ARE HANDLED AS VARCHAR INSTEAD ***/!!!
    )
    COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},{"attributes":{"component":"teradata"}}'
    ;
    
    Copy
  5. 入力ファイルのエンコードを設定する: 詳しくは 一般変換設定 を確認してください。

  6. 大文字小文字の区別に関する仕様に COLLATE を使用する:このフラグは、大文字小文字の区別に関する仕様(CASESPECIFIC か NOT CASESPECIFIC かなど)の機能を保持するために COLLATE か UPPER を使うかどうかを示します。デフォルトではオフになっており、UPPER 関数が大文字小文字を区別しない(NOT CASESPECIFIC)エミュレーションに使用されます。大文字小文字の指定が SnowConvert AI でどのように処理されるかについて詳しくは、こちらをご覧ください。

注釈

すべてのサポート言語に適用される設定を確認するには、次の 記事 をご覧ください。

セッションモード設定

この設定サブページは、入力コードのセッションモードを示すために使用されます。

セッションモード設定サブページ

SnowConvert AI は、TERA と ANSI の両方のモードでTeradataコードを処理します。現在のところ、これは文字データのデフォルトの大文字小文字の仕様と、それが比較にどのように影響するかに限られています。デフォルトでは、セッションモードは TERA です。

SnowConvert AI でセッションモードによってコードがどのように処理され、変換されるかについては、こちらをご覧ください。

DB オブジェクト名の設定

DB オブジェクト名設定ページ

  1. スキーマ: 文字列値は、適用するカスタムスキーマ名を指定します。指定しない場合は、元のデータベース名が使用されます。例: DB1.myCustomSchema.Table1。

  2. データベース: 文字列値は、適用するカスタムデータベース名を指定します。例: MyCustomDB.PUBLIC.Table1。

  3. デフォルト: 上記のいずれの設定もオブジェクト名には使用されません。

コード準備設定

コード準備設定ページ

説明

Prepare my code: 解析と変換の前に入力コードを処理すべきかどうかを示すフラグです。これは、構文解析プロセスを改善するのに役立ちます。デフォルトでは FALSE に設定されています。

入力コードのトップレベルオブジェクトを複数のファイルに分割します。フォルダーは以下のように構成されます。

└───A new folder named ''[input_folder_name]_Processed''
    └───Top-level object type
        └───Schema name
Copy

入力

├───in
│       DDL_Macros.sql
│       DDL_Procedures.sql
│       DDL_Tables.sql
Copy

出力

ファイル名は、入力ファイルのトップレベルのオブジェクトの名前であると仮定します。


├───in_Processed
    ├───macro
    │   └───MY_DATABASE
    │           MY_FIRST_MACRO.sql
    │           ANOTHER_MACRO.sql
    │
    ├───procedure
    │   └───MY_DATABASE
    │           A_PROCEDURE.sql
    │           ANOTHER_PROCEDURE.sql
    │           YET_ANOTHER_PROCEDURE.sql
    │
    └───table
        └───MY_DATABASE
                MY_TABLE.sql
                ADDITIONAL_TABLE.sql
                THIRD_TABLE.sql
Copy

「schema name」フォルダーの中には、入力コードのトップレベルオブジェクトと同じ数のファイルがあるはずです。また、複数の同じタイプのトップレベルオブジェクトが同じ名前を持つ場合、いくつかのファイルのコピーを持つことが可能です。この場合、ファイル名は昇順に列挙されます。

拡張子が「.sql」、「.ddl」、「.dml」のファイルのみが分割の対象となります。「.bteq」スクリプトのような他の種類のファイルは、前処理されたフォルダーにコピーされ、スクリプトの拡張子によって分類されますが、分割タスクによって変更されることはありません。

要件

トップレベルオブジェクトを識別するには、その宣言の前にタグをコメントに含める必要があります。抽出 スクリプトは、これらのタグを生成します。

タグは次の形式に従ってください。

<sc-top_level_object_type>top_level_object_name</sc-top_level_object_type>
Copy

次の例に従うことができます。

/* <sc-table> MY_DATABASE.MY_TABLE</sc-table> */
CREATE TABLE "MY_DATABASE"."MY_TABLE" (
    "MY_COLUMN" INTEGER
) ;
Copy

形式変換設定

形式変換設定ページ

  1. 文字から数値へのデフォルトスケール: CHARACTER から概数への変換の整数値(デフォルト:10)。

  2. デフォルト TIMESTAMP 形式: TIMESTAMP 形式の文字列値(デフォルト: 「YYYY/MM/DD HH:MI:SS.FF6」)。

  3. デフォルト DATE 形式: DATE 形式の文字列値(デフォルト: 「YYYY/MM/DD」)。

  4. ソース TIMEZONE: TIMEZONE 形式を表す文字列値(デフォルト値: 「GMT-5」)。

  5. デフォルト TIME 形式: TIME 形式の文字列値(デフォルト: 「HH:MI:SS.FF6」)。

BTEQ、プロシージャ/マクロのターゲット言語

BTEQ ターゲット言語設定ページ

BteqおよびMloadスクリプトファイルを変換するターゲット言語を指定します。現在サポートされている値は SnowScriptPython です。デフォルト値は Python に設定されています。

プロシージャ/マクロターゲット言語設定ページ

ストアドプロシージャおよびマクロを変換するターゲット言語を指定する文字列値。現在サポートされているのは SnowScriptJavaScript です。デフォルト値は SnowScript に設定されています。

設定のリセット: 設定のリセットオプションは、すべてのページに表示されます。変更を加えた場合は、SnowConvert AI を元のデフォルト設定にリセットすることができます。

Table translation

Used to specify the type of tables that SnowConvert AI will output for table transformations, currently:

  1. Snowflake-native tables

  2. Iceberg tables in Snowflake Horizon Catalog

Default is Snowflake-native tables.

The selected table type will be generated unless the source table is considered not compatible, the following criteria is applied for incompatible tables generation:

Table type

Not compatible tables

Iceberg tables in Snowflake Horizon Catalog

Temporary tables (VOLATILE)

Any table not compatible with the specified table type will not be affected by the setting and transformed to its default table type.