Hi - I am using the database query component to query a SQL Server and some of the columns in the source table are named in the database with camel-case characters, however, when I load into the target table in Snowflake I want all of the columns to be capitalized regardless of whether or not they are camel-case.
Is there a way, either in the configurations of the database query component or another component, to convert the column headers to all-caps without needing to manually define those columns in the rename component?
I think there is no general option for this. If you use a custom SQL in your Database Query Component ("Advanced Mode"), you could type
SELECT "CamelCase" as UPPERCASE ...
and so on. Of course, this is much manual work.
You could also have a look at this Snowflake parameter: https://docs.snowflake.com/en/sql-reference/parameters.html#quoted-identifiers-ignore-case Though, my advice is to be VERY carefull with this setting. We had this enabled for some time and it caused some bad side effects where ultimately, some users could not log in to Snowflake when this parameter was set account wide.
Our team has solved this issue by creating a first table as it comes from the source system (with CamelCase or lowercase columns). We then have a Script that queries the Snowflake data dictionary and creates a new table with the same structure like the first one, but with only UPPERCASE attribute names.
Thanks @Michael I ended up taking the manual work approach exactly as you described because I anticipated that there is not an out of box way to automatically handle this.