The count of all the top-level DDL objects (Table, View, Procedure, etc.) that the SnowConvert identified. If there were a parsing error on an object that made it unreconcilable, it wouldn't be an identified object.
CSV Associated field name
TotalIdentifiedObjects
Sample
IN -> Teradata_01.sql
-- Statement without parsing error
CREATE TABLE table1(
column1 INT,
column2 INT
);
-- Statements with parsing error
CREATE TABLE table2(
column1 INT,
column2 INT INT
);
CRATE TABLE table3(
column1 INT
);
OUT -> Teradata_01.sql
-- Statement without parsing error
CREATE OR REPLACE TABLE table1 (
column1 INT,
column2 INT
)
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},"attributes":{"component":"teradata"}}'
;
-- Statements with parsing error
CREATE OR REPLACE TABLE table2 (
column1 INT
-- ,
-- ** SSC-EWI-0001 - UNRECOGNIZED TOKEN ON LINE '10' COLUMN '6' OF THE SOURCE CODE STARTING AT 'column2'. EXPECTED 'Column Definition' GRAMMAR. LAST MATCHING TOKEN WAS 'INT' ON LINE '10' COLUMN '14'. CODE '15'. **
-- column2 INT INT
)
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},"attributes":{"component":"teradata"}}'
;
-- ** SSC-EWI-0001 - UNRECOGNIZED TOKEN ON LINE '13' COLUMN '1' OF THE SOURCE CODE STARTING AT 'CRATE'. EXPECTED 'STATEMENT' GRAMMAR. LAST MATCHING TOKEN WAS 'CRATE' ON LINE '13' COLUMN '1'. CODE '81'. **
--CRATE TABLE table3(
-- column1 INT
--)
;
Expected Identified Objects: 2
Explanation: The table1 presented doesn't have a parsing error; the table2 even though it has a parsing error, the parser is still capable of recognizing the object as a table, so both are counted as an identified object; the table3 has a parsing error that makes it unreconcilable for the parser and, as a consequence, is not counted as an identified object.
Object Conversion Rate
The percentage of fully converted objects among the objects identified
CREATE TABLE table1(
column1 INT,
column2 INT
);
CREATE VIEW view1 AS
SELECT orderkey
FROM orders;
CREATE TABLE table2(
COLNAME VARCHAR(20)
)
ON COMMIT PRESERVE ROWS;
OUT -> Teradata_02.sql
CREATE OR REPLACE TABLE table1 (
column1 INT,
column2 INT
)
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},{"attributes":{"component":"teradata"}}'
;
--** SSC-FDM-0007 - MISSING DEPENDENT OBJECT "orders" **
CREATE OR REPLACE VIEW view1
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},{"attributes":{"component":"teradata"}}'
AS
SELECT
orderkey
FROM
orders;
CREATE TABLE OR REPLACE table2 (
COLNAME VARCHAR(20)
)
-- --** SSC-FDM-0008 - ON COMMIT NOT SUPPORTED **
-- ON COMMIT PRESERVE ROWS
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},{"attributes":{"component":"teradata"}}'
;
Expected Object Conversion Rate: 66.66%
Explanation: In this example we have 3 statements, all of them have been identified as an object, but just the table1, and the view1 have a 100% conversion rate. The table3 has an error warning meaning that the conversion of this table is not 100%, that's why just 2 of the 3 statements are counted as fully converted objects.
Fully Converted Objects
The number of identify objects that were converted successfully, meaning this objects have a 100% conversion rate.
CSV Associated field name
ObjectsSuccessfullyConverted
Sample
IN -> Teradata_03.sql
CREATE TABLE table1(
column1 INT,
column2 INT
);
CREATE VIEW view1 AS
SELECT orderkey
FROM orders;
CREATE TABLE table2(
COLNAME VARCHAR(20)
)
ON COMMIT PRESERVE ROWS;
OUT -> Teradata_03.sql
CREATE OR REPLACE TABLE table1 (
column1 INT,
column2 INT
)
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},{"attributes":{"component":"teradata"}}'
;
CREATE OR REPLACE VIEW view1
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},{"attributes":{"component":"teradata"}}'
AS
SELECT
orderkey
FROM
orders;
CREATE OR REPLACE TABLE table2 (
COLNAME VARCHAR(20)
)
-- --** SSC-FDM-0008 - ON COMMIT NOT SUPPORTED **
-- ON COMMIT PRESERVE ROWS
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},{"attributes":{"component":"teradata"}}'
;
Expected Fully Converted Objects: 2
Explanation: In this example we have 3 statements, all of them have been identified as an object, but just the table1, and the view1 have a 100% conversion rate. The table3 has an error warning meaning that the conversion of this table is not 100%, that's why just 2 of the 3 statements are counted as fully converted objects.
Unrecognized Elements
Represents any code element (or parts of them) such as DML, DDL, control statements, with parsing errors that SnowConvert was unable to process.
CSV Associated field name
UnrecognizedElements
Sample
IN -> Teradata_04.sql
CREATE TABLE table1(
column1 INT,
column2 INT
);
CREATE VIEWW view1 AS
SELECT orderkey
FROM orders;
OUT -> Teradata_04.sql
CREATE OR REPLACE TABLE table1 (
column1 INT,
column2 INT
)
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},"attributes":{"component":"teradata"}}'
;
-- ** SSC-EWI-0001 - UNRECOGNIZED TOKEN ON LINE '6' COLUMN '1' OF THE SOURCE CODE STARTING AT 'CREATE'. EXPECTED 'STATEMENT' GRAMMAR. LAST MATCHING TOKEN WAS 'CREATE' ON LINE '6' COLUMN '1'. CODE '81'. **
--CREATE VIEWW view1 AS
--SELECT orderkey
--FROM orders
;
Expected Unrecognized Elements: 1
Explanation: In this example we have 2 statements, the table1 is successfully identified as an object, in the other hand the view1, has a parsing error that means it's impossible to identify the view as an object, because of this SnowConvert reports 1 Unrecognized object.
Lines of Code in Unrecognized Elements
Represents the number of lines in unrecognized elements.
CSV Associated field name
UnrecognizedElementsLOC
Sample
IN -> Teradata_05.sql
CREATE TABLE table1(
column1 INT,
column2 INT
);
CREATE VIEWW view1 AS
SELECT orderkey
FROM orders;
OUT -> Teradata_05.sql
CREATE OR REPLACE TABLE table1 (
column1 INT,
column2 INT
)
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},"attributes":{"component":"teradata"}}'
;
-- ** SSC-EWI-0001 - UNRECOGNIZED TOKEN ON LINE '6' COLUMN '1' OF THE SOURCE CODE STARTING AT 'CREATE'. EXPECTED 'STATEMENT' GRAMMAR. LAST MATCHING TOKEN WAS 'CREATE' ON LINE '6' COLUMN '1'. CODE '81'. **
--CREATE VIEWW view1 AS
--SELECT orderkey
--FROM orders
;
Expected Lines of Code in Unrecognized Elements: 3
Explanation: The element view1 is an unrecognized element, this means that the lines related to this elements are counted as Lines of Code in Unrecognized Elements.
Wrapped Objetcs
Represent the number of wrapped objects present in source input code