Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi, when replicating from AWS Aurora Postgres to Snowflake, Qlik Replicate tasks create all objects in Snowflake with quoted identifiers. From the source, none of our tables/columns have quoted or require quotes.
Example target table on Snowflake:
create or replace TABLE TESTDB."testschema"."test_table" (
"test_table_id" NUMBER(38,0) NOT NULL,
"col1" VARCHAR(36) NOT NULL,
"col2" NUMBER(38,0) NOT NULL,
"created_date" TIMESTAMP_NTZ(6) NOT NULL,
"created_by" VARCHAR(100) NOT NULL,
"updated_date" TIMESTAMP_NTZ(6) NOT NULL,
"updated_by" VARCHAR(100) NOT NULL,
constraint test_table_key_PK primary key ("test_table_id")
);
This adds quite a bit of overhead when coding in Snowflake. Is there setting or way to remove this?
Hi @MarcBExp22
The reason Replicate is creating tables/columns with double quotes is:
https://docs.snowflake.com/en/
-->
"Specifies the identifier (i.e. name) for the table; must be unique for the schema in which the table is created.
In addition, the identifier must start with an alphabetic character and cannot contain spaces or special characters unless the entire identifier string is enclosed in double quotes (e.g. "My object"). Identifiers enclosed in double quotes are also case-sensitive.".
Also use the OOB from Snowflake 'QUOTED_IDENTIFIERS_IGNORE_CAS
https://docs.snowflake.com/en/
Thank you,
Solution found:
Verify on Snowflake side the following ACCOUNT level parameter is set. (research and work with your account admin to understand impacts to this setting)
ALTER ACCOUNT SET QUOTED_IDENTIFIERS_IGNORE_CASE = FALSE;
Stop task, go to task settings and make sure under full load to Drop and Create tables. Re-run task (reload target) and tables/columns in Snowflake will now be created in all caps without quotes.
Hi @MarcBExp22
The reason Replicate is creating tables/columns with double quotes is:
https://docs.snowflake.com/en/
-->
"Specifies the identifier (i.e. name) for the table; must be unique for the schema in which the table is created.
In addition, the identifier must start with an alphabetic character and cannot contain spaces or special characters unless the entire identifier string is enclosed in double quotes (e.g. "My object"). Identifiers enclosed in double quotes are also case-sensitive.".
Also use the OOB from Snowflake 'QUOTED_IDENTIFIERS_IGNORE_CAS
https://docs.snowflake.com/en/
Thank you,
Solution found:
Verify on Snowflake side the following ACCOUNT level parameter is set. (research and work with your account admin to understand impacts to this setting)
ALTER ACCOUNT SET QUOTED_IDENTIFIERS_IGNORE_CASE = FALSE;
Stop task, go to task settings and make sure under full load to Drop and Create tables. Re-run task (reload target) and tables/columns in Snowflake will now be created in all caps without quotes.