As you can see, TEMPORARY was added to the definition of the table, and the character # was replaced with T_.
Also, all references of the table will be transformed too, to match the new name given to the temporary table.
NULL and NOT NULL Column Option
NULL and NOT NULL column options are supported in Snowflake.
Source
IN -> SqlServer_03.sql
CREATETABLE [SCHEMA1].[TABLE1]( [COL1] [varchar](20) NOT NULL) ON [PRIMARY]GOCREATETABLE [SCHEMA1].[TABLE2]( [COL1] [varchar](20) NULL) ON [PRIMARY]GO
Expected
OUT -> SqlServer_03.sql
CREATE OR REPLACETABLESCHEMA1.TABLE1 ( COL1 VARCHAR(20) NOT NULL)COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},"attributes":{"component":"transact"}}'
;CREATE OR REPLACETABLESCHEMA1.TABLE2 ( COL1 VARCHAR(20) NULL)COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},"attributes":{"component":"transact"}}'
;
Identity Column Option
For identity columns, a sequence is created and assigned to the column.
Source
IN -> SqlServer_04.sql
CREATETABLEacct3.UnidentifiedCash3 (UnidentifiedCash_ID3 INTIDENTITY (666, 313) NOT NULL);
Expected
OUT -> SqlServer_04.sql
CREATE OR REPLACESEQUENCEacct3.UnidentifiedCash3_UnidentifiedCash_ID3STARTWITH666INCREMENT BY313COMMENT ='FOR TABLE-COLUMN acct3.UnidentifiedCash3.UnidentifiedCash_ID3';CREATE OR REPLACETABLEacct3.UnidentifiedCash3 (UnidentifiedCash_ID3 INTDEFAULT acct3.UnidentifiedCash3_UnidentifiedCash_ID3.NEXTVAL NOT NULL)COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},"attributes":{"component":"transact"}}'
;
For more information, you can also check this warning related to this transformation.
Default Column Option
The default Expr is supported in Snowflake, however, in SqlServer it can come together with a constraint Name. Since that part is not supported in Snowflake, it is removed and a warning is added.
CREATE OR REPLACETABLESCHEMA1.TABLE1 ( COL1 VARCHAR(10)--** SSC-FDM-0012 - CONSTRAINT IN DEFAULT EXPRESSION IS NOT SUPPORTED IN SNOWFLAKE **DEFAULT ('0') NOT NULL)COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},"attributes":{"component":"transact"}}'
;
Column Constraint
Source
IN -> SqlServer_06.sql
CREATETABLE [SalesLT].[Address]( [AddressID] [int] IDENTITY(1,1) NOTFOR REPLICATION NOT NULL, [AddressLine1] [nvarchar](60) NOT NULL, [AddressLine2] [nvarchar](60) NULL, [City] [nvarchar](30) NOT NULL,