Release Notes

Release 1.2.1 - Oct 11th, 2021

SnowConvert Core 3.1.9

Added
    Robustness on the parser for CREATE PROCEDURES
    Transformation for BULK INSERT statements
    Transformation for object_id inside IF statements
    Transformation for object_schema_name(@ObjectId, @DatabaseId)
    Transformation for object_name(@ObjectId, @DatabaseId)
    Transformation for modulo (%) operations in IF conditions
    Transformation for WAITFOR statements
    Transformation for empty statements inside Stored Procedures
    Transformation for ERROR_SEVERITY function
Fixed
    Transformation for double-dot qualifiers. Example:
Input
select * from db..table1
Output
select * from db.dbo.table1
    Comment objects with missing dependencies
    Inconsistent Total Issues value on UI vs Assessment report
    Custom database and schema options not working in the UI
    Disabling EWI comments generation in some cases
    Transformation for Procedures inside Unicode literals

Release 1.2.0 - Sep 28, 2021

SnowConvert Core 3.1.8

Added
Fixed
    Translation for CROSS APPLY
    Translation for NLiteral expressions inside SELECT statements
    Translation for IDENTITY with default values
    Translation for UPDATE statements with JOIN clauses
    Translation for SELECT INTO used in COMMON TABLE EXPRESSION

Release 1.1.17 - Sep 14, 2021

SnowConvert Core 3.1.3

Added
    Robustness on the parser for CREATE VIEW and CREATE PROCEDURES
    Translation for CASE Expressions and built-In functions calls inside procedures.
    Translation for BREAK statement.
    Translation for supported ODBC SCALAR FUNCTIONS.
    Translation for SELECT @LOCAL_VARIABLE.
    Missing dependencies warning to views without their dependencies in the source code.
    Regions for PROCEDURES helpers.
    Warning for MASKED columns.
Fixed
    EXISTS translation in order to use the Snowflake built-in.

Release 1.1.16 - Aug 31, 2021

SnowConvert Core 3.1.1

Added
    Robustness on the parser for CREATE TABLE , CREATE VIEW and CREATE PROCEDURES
    Assessment Accuracy Improvements:
      Parsing errors count on output code and issues csv file.
      Differentiation between warnings and errors count.
      Warnings to some transformations properly added.
    Built-In functions translation:
      CONVERT
      COALESCE
      ISNUMERIC
      QUOTENAME
      USER_NAME
      SOUNDEX
      DATEPART
      DATENAME
      NEWID
      PATINDEX
      FORMAT
      PARSENAME
      STUFF
      DATABASE_PRINCIPAL_ID
    Translation for sysname , datetimeoffset , NChar , NText , sql_variant and timestamp data types
    Translation for computed columns
Fixed
    Translation for identity columns with negative values.

Release 1.1.15 - August 18, 2021

Fixed
    The confirmation pop-up window for canceling the migration process is not displayed correctly.

Release 1.1.14 - Aug 16, 2021

SnowConvert Core 3.1.0

Added
    Assessment Accuracy Improvements.
    Empty square brackets can now being parsed as column definition.
    CONSTRAINT PRIMARY KEY is now being properly translated.
    Top Level object report Generated.
    Default Parameters in Procedures now supported.
    Support Column names with reserved or special keywords.
    Assignments of the EXEC helper refactored to be more accurate to the source code.
    XML, Image, SMALLDATETIME and UNIQUEIDENTIFIER types now supported on translations.
Fixed
    Invalid keywords are no longer kept in the table DDL.
    Fixed StackOverflowException on MAC that caused the application to failed with error or log message.
    Fixed error where Hexadecimal values caused errors when contained inside procedures.

Release 1.1.12 - Aug 4, 2021

SnowConvert Core 3.0.22

Added

    Better error handling for:
      Unicode Literal failed transformations (Accurate EWI is now displayed)
    Parser robustness for:
      GO command
      OPEN GLOBAL
      CLOSE GLOBAL
      Files starting with invalid text (Not with SQL comments or SQL grammar elements)
    Translation for:
      LIKE
      NOT LIKE

Fixed

    Warnings added for SEQUENCE not being accurately counted.
    Inconsistencies shown in assessment information between identical runs of the tool for some workloads.
    Exception occurring during SELECT INTO transformation.

Release 1.1.11 - Jul 19, 2021

SnowConvert Core 3.0.20

Added
    Improved Assessment Accuracy for:
      Declare Statements in procedures.
      If Statements.
      Cursor Statements.
      Merge Statements.
    Translate statement SELECT INTO TableName .
    Translate statements in Create Procedure:
      Identity Column.
      Column names with operators.
    Disclaimer for SQL Identified objects and SQL Files conversion rate.
Fixed
    EXECcall not being generated in the output.
    SnowConvert conversion loop for certain store procedures.
    Error migrating views and code being removed.
    Translation of negative values being translated to positive values.
    NOT EXISTS is being translated as EXISTS.
    Inconsistencies in Assessment Accuracy conversion rate.
    DefaultExpression should be counted as an error and affect the conversion rate.
    MSC-ISSUE renamed to MSC-ERROR in all the reports.

Release 1.1.10 - Jul 6, 2021

SnowConvert Core 3.0.16

Added
    Robustness on the parser for CREATE TABLE , CREATE VIEW and CREATE PROCEDURES
    Translate basic statements in CREATE PROCEDURES such as:
      Translate BEGIN TRANSACTION statement
      Translate COMMIT statement
      Translate for ROLLBACK and ROLLBACK TRANSACTION statement
      Translate THROW statement
      Translate INSERT INTO EXEC
    Translate Temporal Tables
    Translate for EXECUTE Statement and N Literal
    Translate of CREATE PROCEDURE AS OWNER
    Translate built-in functions that have equivalence in Snowflake
    Translate TRUNCATE Statement
    Translate DROP TABLE statement
    Telemetry for assessment

Release 1.1.9 - Jun 22, 2021

SnowConvert Core 3.0.13

Added
    Robustness on the parser for CREATE TABLE , CREATE VIEW and CREATE PROCEDURES
    Translate basic statements in CREATE PROCEDURE such as:
      Translate EXECUTE/EXEC statement
      Translate embedded CREATE TABLE statement
    Translate basic predicates such as:
      BETWEEN Predicate
      EXISTS Predicate
      IN Predicate
    Translate WITH Clauses in CREATE TABLE
    Translate Cursor DECLARE, OPEN, FETCH, CLOSE and DEALLOCATE

Release 1.1.5 - Jun 9, 2021

SnowConvert Core 3.0.9

Added

    Robustness on the parser for CREATE TABLE , CREATE VIEW and CREATE PROCEDURES

Release 1.1.3 - May 25, 2021

SnowConvert Core 3.0.5

Added
    Translated basic CREATE PROCEDURE
    Translate basic statements in CREATE PROCEDURE such as:
      DECLARE @variable
      SET @variable
      TRY CATCH Statement
      IF Statement
      While Statement
      RETURN Statement
      SELECT, UPDATE, INSERT, DELETE and MERGE.
    Translate basic expressions in CREATE PROCEDURE such as:
      IS NULL / IS NOT NULL predicate
      BINARY Operations ( +, -, *, / )
      Comparisons ( >,<, <=, >= )
In order to try out the newly added translation features, you can use this example code and migrate this example with SQLServer SnowConvert.
1
CREATE PROCEDURE Procedure1(
2
@model_year SMALLINT,
3
@FirstName NVARCHAR(50),
4
@Age INT,
5
@Balance SMALLMONEY,
6
@Description VARCHAR
7
) AS
8
BEGIN
9
DECLARE @cursor_db CURSOR;
10
DECLARE @database_id INT, @database_name VARCHAR(255);
11
DECLARE @product_list VARCHAR(MAX) = ' ';
12
DECLARE @Variable1 AS VARCHAR(100), @Variable2 AS VARCHAR(100);
13
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
14
SET NOCOUNT ON
15
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
16
SET NOCOUNT OFF
17
SET @product_list = '';
18
SET @var1 += '';
19
SET @var2 &= '';
20
SET @var3 ^= '';
21
SET @var4 |= '';
22
SET @var5 /= '';
23
SET @var6 %= '';
24
SET @var7 *= '';
25
SET @var8 -= '';
26
SET @statement = 'SELECT * FROM TABLE1 WHERE COL1 = '+@param1+ ' AND COL2 = ' + @param2;
27
28
BEGIN TRY
29
IF @Age > 15
30
return
31
ELSE
32
return 2;
33
34
WHILE (@PATITO < 2)
35
BEGIN
36
SELECT * FROM TABLE1;
37
END;
38
39
INSERT INTO TABLE1 VALUES (1,2,3, @param1);
40
DELETE dbo.Table2 FROM dbo.Table2 INNER JOIN dbo.Table1 ON (dbo.Table2.ColA = dbo.Table1.ColA) WHERE @ColA = 1;
41
Update PruebaUpdate Set Col1 = 5;
42
END TRY
43
BEGIN CATCH
44
return -1;
45
END CATCH
46
END;
47
GO
Copied!

Release 1.1.2 - May 14, 2021

SnowConvert Core 3.0.3

Added
    Translate Tables
    Translate Views
    Assessment Report for Tables and Views
Known issue: you may get some error in the UI if you try to migrate Procedures and Functions
Last modified 6d ago