Inquiry Regarding Double Quotes in Table Name Creation

Hello All,

I am currently working on writing data into Snowflake using KNIME, and I have encountered a situation where the DB Table create node is successfully creating the table. However, it is also including double quotes around the table name (“Table_Name”).

I would like to inquire if there is a way to exclude the double quotes while creating the database name. Your assistance in resolving this matter would be greatly appreciated.

Thank you in advance for your prompt attention and support.

Hi @kotlapullareddy, are you saying that the table on Snowflake actually contains double quotes in its name (so when you view it in the Snowsight web ui, or whichever client you have available, you see the double quotes? )

If I create a table on snowflake, e.g.

It appears in Snowsight like this (no double quotes in the name):

although the table definition will include double quotes

Double quotes will be applied around the name of a table when the table name is not all uppercase, or contains spaces and possibly some other characters

If the table name is purely upper case and underscores, the DDL statement that snowflake shows won’t contain double quotes:

But this is to be expected since the ANSI standard is that table names are case insensitive (which generally means everything is “treated as upper case” unless explicitly delimited by double-quotes).

For mixed case or lower case table names, the table itself does not have a name containing double quotes, it’s just that if you have used mixed case or lower case, you need to put double quotes around it to be able to use it (ie differentiate it from the completely upper case “default” version of the name). This is standard across (almost?) all SQL databases.

In simple terms though, if you use only upper case and underscores, you probably won’t see any double-quotes appearing.

Alternatively, you could set the option in the Snowflake connector to “delimit only identifier with spaces” in the snowflake connector “advanced” tab:

…but if you do this, then using a name such as SRSFiles as the table name will result in Snowflake creating a table SRSFILES instead of SRSFiles. This is the expected behaviour for Snowflake and other SQL databases. The general database standard for differentiating parts of the name is to use underscores rather than mixed case e.g. SRS_FILES

If I’m misunderstanding the question or problem, can you explain your problem in more detail.

1 Like

Thank you @takbb for detailed info… really appreciate your quick help.

1 Like

You’re welcome, and I’m glad that resolved it. Thanks for marking the solution :wink:

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.