Comment on page
Command Line Interface
Integrate SnowConvert for SQL Server into your CI/CD process with the CLI version of the tool.
To execute a conversion with the SnowConvert for SQL Server 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.To install a license key just execute SnowConvert CLI program with the
-l
argument and the license key.$: snowct-sqlserver -l P-ABCD-12345-EFGHI
To install a license key just execute SnowConvert CLI program with just the
-l
and no other arguments.$: snowct-sqlserver -l
To migrate a folder just execute SnowConvert CLI program with the
-i <INPUT FOLDER>
and -o <OUTPUT FOLDER>
arguments.$: snowct-sqlserver -i ~/Documents/Workspace/Code -o ~/Documents/Workspace/Output
The path to the folder or file containing the input source code.
The path to the output folder where the converted code and reports will be stored.
Flag to indicate whether or not to generate only Assessment files. By default, it's set to FALSE.
Flags were used to indicate whether the migration tool should migrate stored procedures to Snowflake Scripting.
--PLTargetLanguage
Flag to indicate whether or not to preprocess or arrange the source code before its transformation. By default, it's set to FALSE.
prettyprint | Applies indentation to the original code and get it well organized. |
generatereports | Generates extra reports after the arrangement. |
multiple | Applies arrangement to multiple databases represented as multiple folders, and keeps their original structure. |
The encoding code page number is 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 |
Flag to indicate if the user wants to comment on nodes that have missing dependencies.
The string value specifies the target language to convert Stored procedures and Macros. Currently supported are: SnowScript and JavaScript.
The default value is set to SnowScript.
The string value specifies the custom schema name to apply. If not specified, either PUBLIC or the original database name will be used. Example: DB1.MyCustomSchema.Table1.
If you provide this parameter with a schema name NONE
--customschema none
, the converted code will keep the original schema defined in the source code.The string value specifies the custom database name to apply. Example: MyCustomDB.PUBLIC.Table1.
--useExistingNameQualification
This flag must be used in conjunction with the
-d
or -s
parameters. When used, it preserves the existing name qualification from the input code when previous parameters are used.
Let's take a look at this example where -s newSchema
was included:Input code
Default
Using --useExistingNameQualification
SELECT * FROM mySchema.myObject;
SELECT * FROM newSchema.myObject;
SELECT * FROM mySchema.myObject;
The same applies to databases.
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-sqlserver -l
- Installing a license
snowct-sqlserver -l 12345-ASDFG-67890
Show license terms information.
Display the help information.