Command Line Interface

Integrate SnowConvert for Teradata into your CI/CD process with the CLI version of the tool.

Quick start

To execute a conversion with the SnowConvert CLI you have to have an active license. Currently, the licenses for the CLI are different than the UI, but if you already have a license for the UI you should be able to reuse the same license key. In the section below we show how to install a license key.

There are several Command Line Arguments documented below, but the main ones are -i for the input folder and -o for the output folder.

Install a license

To install a license key just execute SnowConvert CLI program with the -l argument and the license key.

$: snowct -l P-ABCD-12345-EFGHI

Check license status

To install a license key just execute SnowConvert CLI program with just the -l and no other arguments.

$: snowct -l

Migrate a folder

To migrate a folder just execute SnowConvert CLI program with the -i <INPUT FOLDER> and -o <OUTPUT FOLDER> arguments.

$: snowct -i ~/Documents/Workspace/Code -o ~/Documents/Workspace/Output

CLI Arguments

Basic Conversion

-i, --input <PATH> (Required)

The path to the folder or file containing the input source code.

-o, --output <PATH> (Required)

The path to the output folder where the converted code and reports will be stored.

-a, --assessmentmode

Flag to indicate whether or not to generate only Assessments files. By default, it's set to FALSE.

-e, --encoding <CODE PAGE>

The encoding code page number used for parsing the source files. We only accept encodings supported by .NET Core. Here are the ones supported at the moment:

Code Page

Name

Display Name

1200

utf-16

Unicode

1201

unicodeFFFE

Unicode (Big endian)

12000

utf-32

Unicode (UTF-32)

12001

utf-32BE

Unicode (UTF-32 Big endian)

20127

us-ascii

US-ASCII

28591

iso-8859-1

Western European (ISO)

65000

utf-7

Unicode (UTF-7). Not available in .NET 5

65001

utf-8

Unicode (UTF-8). Default encoding

-m, --comments

Flag to indicate if user wants to comment nodes that have missing dependencies.

Object Name Customization

-s, --customschema <SCHEMA_NAME>

String value specifying the custom schema name to apply. If not specified, either PUBLIC or the original database name will be used. Example: DB1.MyCustomSchema.Table1.

-d, --database <DB_NAME>

String value specifying the custom database name to apply. Example: MyCustomDB.PUBLIC.Table1.

Format Conversion

--CharacterToApproximateNumber <NUMBER>

Integer value for the CHARACTER to Approximate Number transformation (Default: 10).

--DefaultDateFormat <STRING>

String value for the Default DATE format (Default: "YYYY/MM/DD").

--DefaultTimeFormat <STRING>

String value for the Default TIME format (Default: "HH:MI:SS") .

--DefaultTimestampFormat <STRING>

String value for the Default TIMESTAMP format (Default: "YYYY/MM/DD HH:MI:SS").

--DefaultTimezoneFormat <STRING>

String value for the Default TIMEZONE format (Default: "GMT-5").

Cast Conversion

--avoidTruncatedDataInCast

Flag to indicate whether or not to change string cast to a trimming function when it might truncate data.

--warnIfCastMightTruncateData

Flag to indicate whether or not the user wants to be warned when a string cast should be changed to a trimming function to avoid data truncation.

--useLeftFunctionInTruncatedCast

Flag to indicate whether or not to use the LEFT function in string cast that might truncate data.

--replaceDeleteAllToTruncate

Flag to indicate whether Delete All statements must be replaced to Truncate or not.

License and Help

-l, --license [<LICENSE_KEY>]

Shows the license information. If it's followed by a license key, it will attempt to download and install such a license. For example:

  • Showing license status snowct -l

  • Installing a license snowct -l 12345-ASDFG-67890

--terms

Show license terms information.

--help

Display the help information.

Other features

--disableEWIsGeneration

Flag to indicate whether EWIs comments (Errors, Warnings, and Issues) will be generated on the converted code. Default is false.

--generateStoredProcedureTags

Flag to indicate whether the SQL statements SELECT, INSERT, CREATE, DELETE, UPDATE, DROP, MERGE in Stored Procedures will be tagged on the converted code. This feature is used for easy statements identification on the migrated code. Wrapping these statements within these XML-like tags allows for other programs to quickly find and extract them. The decorated code looks like this:

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

Learn more about how you can get access to the SnowConvert for Teradata Command Line Interface tool by filling out the form on our Snowflake Migrations Info page.