SnowConvert: Teradata¶
具体的な CLI 引数¶
以下の CLI 引数は、 SnowConvert for Teradata で移行を実行するためのものです。
--displaceDatabaseAsSchema
¶
このフラグは、 -s
パラメーターとともに使用する必要があります。使用すると、Snowflakeコード上のスキーマになるデフォルトの動作とは逆に、SnowflakeのデータウェアハウスとしてTeradataのデータベース名の資格を維持します。-s customSchema
が含まれている例を見てみましょう。
SELECT * FROM databaseName.tableName;
-- Additional Params: -s customSchema
SELECT
* FROM
customSchema.tableName;
-- Additional Params: -s customSchema --displaceDatabaseAsSchema
SELECT
* FROM
databaseName.customSchema.tableName;
--CharacterToApproximateNumber <NUMBER>
¶
CHARACTER から概数への変換の整数値(デフォルト: 10
)。
--DefaultDateFormat <STRING>
¶
デフォルト DATE 形式の文字列値(デフォルト: "YYYY/MM/DD"
)。
--DefaultTimeFormat <STRING>
¶
デフォルト TIME 形式の文字列値(デフォルト: "HH:MI:SS"
)。
--DefaultTimestampFormat <STRING>
¶
デフォルト TIMESTAMP 形式の文字列値(デフォルト: "YYYY/MM/DD HH:MI:SS"
)。
--DefaultTimezoneFormat <STRING>
¶
デフォルト TIMEZONE 形式の文字列値(デフォルト: "GMT-5"
)。
-p, --scriptTargetLanguage <TARGET_LANGUAGE>
¶
文字列値は、BteqおよびMloadスクリプトファイルを変換するターゲット言語を指定します。現在サポートされている値は SnowScript と Python です。デフォルト値は Python に設定されています。
-n, --SessionMode <SESSION_MODE>
¶
SnowConvert は、 TERA と ANSI の両方のモードでTeradataコードを処理します。現在のところ、これは文字データのデフォルトの大文字と小文字の指定と、それが比較にどのように影響するかに限られています。
文字列値は、入力コードのセッションモードを指定します。現在サポートされている値は TERA と ANSI です。デフォルト値は TERA に設定されています。
セッションモードに応じて SnowConvert がどのようにコードを処理し、変換するかについては、こちらをご確認ください。
--replaceDeleteAllToTruncate
¶
Delete AllステートメントをTruncateに置き換える必要があるかどうかを示すフラグ。これにより、置き換えが完了すると、 SSC-EWI-TD0037 が生成されます。例:
create table testTable(
column1 varchar(30)
);
delete testTable all;
delete from testTable;
CREATE OR REPLACE TABLE testTable (
column1 varchar(30)
)
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},{"attributes":{"component":"teradata"}}'
;
DELETE FROM testTable;
DELETE FROM
testTable;
-- Additional Params: --replaceDeleteAllToTruncate
CREATE OR REPLACE TABLE testTable (
column1 varchar(30)
)
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},{"attributes":{"component":"teradata"}}'
;
TRUNCATE TABLE testTable;
DELETE FROM
testTable;
--splitPeriodDatatype
¶
このフラグは、 PERIOD
データ型の使用を、元の期間の開始値と終了値を保持する2つの別個のフィールド DATETIME
としてツールに移行することを示すために使用されます。このフラグを使用して期間フィールドまたは関数が移行される場合はいつでも、この変更について警告するために SSC-FDM-TD0004 が追加されます。
CREATE TABLE myTable(
col1 PERIOD(DATE),
col2 VARCHAR(50),
col3 PERIOD(TIMESTAMP)
);
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"}}'
;
-- Additional Params: --splitPeriodDatatype
CREATE OR REPLACE TABLE myTable (
col1_begin DATE,
col1_end DATE /*** SSC-FDM-TD0004 - PERIOD DATA TYPES ARE HANDLED AS TWO DATA FIELDS ***/,
col2 VARCHAR(50),
col3_begin TIMESTAMP,
col3_end TIMESTAMP /*** SSC-FDM-TD0004 - PERIOD DATA TYPES ARE HANDLED AS TWO DATA FIELDS ***/
)
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},{"attributes":{"component":"teradata"}}'
;
--arrange
¶
入力コードを解析して変換する前に処理するかどうかを示すフラグ。
--RenamingFile
¶
テーブル、ビュー、プロシージャ、関数、マクロなどの特定のオブジェクトの新しい名前を指定する.jsonファイルへのパス。このパラメーターは customSchema
引数とは併用できません。この引数の詳細については、 名前の変更機能を参照してください。
--UseCollateForCaseSpecification
¶
このフラグは、大文字と小文字の指定機能を保持するために、 CASESPECIFIC または NOT CASESPECIFIC など、 COLLATE または UPPER のどちらを使用するかを示します。デフォルトではオフに設定されており、 UPPER 関数を使用して大文字と小文字を区別しません(NOT CASESPECIFIC)。SnowConvert で大文字と小文字がどのように扱われるかについては、こちらをご参照ください。