SnowConvert AI - Teradata

특정 CLI 인자

The following CLI arguments are specific for executing migrations with SnowConvert AI for Teradata

--displaceDatabaseAsSchema

이 플래그는 -s 매개 변수와 함께 사용해야 합니다. 이 옵션을 사용하면 Snowflake 코드의 스키마가 되는 기본 동작과 달리, Teradata의 데이터베이스 이름 자격을 Snowflake의 데이터 웨어하우스로 유지합니다. -s customSchema 이 포함된 예제를 살펴보겠습니다.

SELECT * FROM databaseName.tableName;
Copy
-- Additional Params: -s customSchema
SELECT
* FROM
customSchema.tableName;
Copy
-- Additional Params: -s customSchema --displaceDatabaseAsSchema
SELECT
* FROM
databaseName.customSchema.tableName;
Copy

--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 스크립트 파일을 변환할 대상 언어를 지정합니다. 현재 지원되는 값은 SnowScriptPython 입니다. 기본값은 Python 로 설정됩니다.

-n, --SessionMode <SESSION_MODE>

SnowConvert AI handles Teradata code in both TERA and ANSI modes. Currently, this is limited to the default case specification of character data and how it affects comparisons.

문자열 값은 입력 코드의 세션 모드를 지정합니다. 현재 지원되는 값은 TERAANSI 입니다. 기본값은 TERA 로 설정됩니다.

You can learn more about how SnowConvert AI handles and converts code depending on the session mode, check here.

--replaceDeleteAllToTruncate

모두 삭제 문을 잘라내기로 대체할지 여부를 나타내는 플래그입니다. 교체가 완료되면 SSC-EWI-TD0037 이 생성됩니다. 예:

create table testTable(
    column1 varchar(30)
);

delete testTable all;

delete from testTable;
Copy
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;
Copy
-- 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;
Copy

--generateStoredProcedureTags

저장 프로시저의 SQL 문 SELECT, INSERT, CREATE, DELETE, UPDATE, DROP, MERGE 를 변환된 코드에 태그할지 여부를 표시하는 플래그입니다. 이 기능은 마이그레이션된 코드에서 문을 쉽게 식별하는 데 사용됩니다. 이러한 문을 XML 과 유사한 태그로 감싸면 다른 프로그램에서 빠르게 찾아서 추출할 수 있습니다. 장식된 코드는 다음과 같습니다.

//<SQL_DELETE
EXEC(DELETE FROM SB_EDP_SANDBOX_LAB.PUBLIC.USER_LIST,[])
//SQL_DELETE!>
Copy

--splitPeriodDatatype

이 플래그는 도구가 PERIOD 데이터 타입의 사용을 원래 기간 시작 및 종료 값을 보유하는 2개의 개별 DATETIME 필드로 마이그레이션해야 함을 나타내는 데 사용되며, 이 플래그 SSC-FDM-TD0004 를 사용하여 기간 필드 또는 함수를 마이그레이션할 때마다 이 변경 사항에 대해 경고하는 메시지가 추가됩니다.

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
-- 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"}}'
;
Copy

--arrange

입력 코드를 구문 분석 및 변환 전에 처리할지 여부를 나타내는 플래그입니다.

--RenamingFile

테이블, 뷰, 프로시저, 함수 및 매크로와 같은 특정 오브젝트에 대한 새 이름을 지정하는 .json 파일의 경로입니다. 이 매개 변수는 customSchema 인자와 함께 사용할 수 없습니다. 이 인자에 대해 자세히 알아보려면 이름 바꾸기 기능을 참조하십시오.

--UseCollateForCaseSpecification

This flag indicates whether to use COLLATE or UPPER to preserve Case Specification functionality, e.g. CASESPECIFIC or NOT CASESPECIFIC. By default, it is turned off, meaning that the UPPER function will be used to emulate case insensitivity (NOT CASESPECIFIC). To learn more about how Case Specification is handled by SnowConvert AI check here.