SnowConvert : Teradata¶
Arguments spécifiques de la CLI¶
Les arguments de CLI suivants sont spécifiques à l’exécution des migrations avec SnowConvert for Teradata
--displaceDatabaseAsSchema
¶
Cet indicateur doit être utilisé avec le paramètre -s
. Lorsqu’il est utilisé, il maintient la qualification du nom de la base de données de Teradata en tant qu’entrepôt de données de Snowflake, contrairement à son comportement par défaut où il devient un schéma sur le code de Snowflake. Examinons un exemple où -s customSchema
est inclus :
SELECT * FROM databaseName.tableName;
-- Additional Params: -s customSchema
SELECT
* FROM
customSchema.tableName;
-- Additional Params: -s customSchema --displaceDatabaseAsSchema
SELECT
* FROM
databaseName.customSchema.tableName;
--CharacterToApproximateNumber <NUMBER>
¶
Valeur entière pour la transformation de CHARACTER en nombre approximatif (valeur par défaut : 10
).
--DefaultDateFormat <STRING>
¶
Valeur chaîne par défaut du format DATE (par défaut : "YYYY/MM/DD"
).
--DefaultTimeFormat <STRING>
¶
Valeur chaîne par défaut du format TIME (par défaut : "HH:MI:SS"
).
--DefaultTimestampFormat <STRING>
¶
Valeur chaîne par défaut du format TIMESTAMP (par défaut : "YYYY/MM/DD HH:MI:SS"
).
--DefaultTimezoneFormat <STRING>
¶
Valeur chaîne par défaut du format TIMEZONE (par défaut : "GMT-5"
).
-p, --scriptTargetLanguage <TARGET_LANGUAGE>
¶
La valeur de la chaîne spécifie la langue cible pour la conversion des fichiers script Bteq et Mload. Les valeurs actuellement prises en charge sont SnowScript et Python. La valeur par défaut est définie sur Python.
-n, --SessionMode <SESSION_MODE>
¶
SnowConvert gère le code Teradata dans les modes TERA et ANSI. Pour l’instant, cela se limite à la spécification de cas par défaut des données de caractère et à la manière dont cela affecte les comparaisons.
La valeur de la chaîne spécifie le mode de session du code d’entrée. Les valeurs actuellement prises en charge sont TERA et ANSI. La valeur par défaut est définie sur TERA.
Pour en savoir plus sur la façon dont SnowConvert traite et convertit le code en fonction du mode de session, cliquez ici.
--replaceDeleteAllToTruncate
¶
Indicateur indiquant si les instructions Delete All doivent être remplacées par Truncate ou non. Cela générera SSC-EWI-TD0037 lorsque le remplacement sera effectué. Exemple :
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
¶
Cet indicateur est utilisé pour spécifier que l’outil doit migrer toute utilisation du type de données PERIOD
en deux champs DATETIME
distincts qui contiendront les valeurs originales de début et de fin de période. Chaque fois qu’un champ ou une fonction de période est migré(e) à l’aide de cet indicateur, SSC-FDM-TD0004 seront ajoutés pour avertir de ce changement.
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
¶
Indicateur signalant si le code d’entrée doit être traité avant l’analyse et la transformation.
--RenamingFile
¶
Le chemin d’accès à un fichier .json qui spécifie les nouveaux noms de certains objets tels que les tables, les vues, les procédures, les fonctions et les macros. Ce paramètre ne peut pas être utilisé avec l’argument customSchema
. Consultez Renommage de fonction pour en savoir plus sur cet argument.
--UseCollateForCaseSpecification
¶
Cet indicateur signale s’il faut utiliser COLLATE ou UPPER pour préserver la fonctionnalité de spécification de casse, par exemple CASESPECIFIC ou NOT CASESPECIFIC. Par défaut, elle est désactivée, ce qui signifie que la fonction UPPER sera utilisée pour émuler l’insensibilité à la casse (NOT CASESPECIFIC). Pour en savoir plus sur la façon dont la spécification de cas est gérée par SnowConvert, cliquez ici.