Hi everyone,
I’m accessing Snowflake tables through SAS Data Integration Studio using the Snowflake connector.
When I register table from Snowflake in SAS DI, I noticed that VARCHAR(n) columns are automatically assigned LENGTH=3n in SAS metadata.
For example: VARCHAR(2) becomes LENGTH=6.
Why does this happen, even though both systems use UTF-8?
Thanks in advance!
My first idea would be that Snowflake counts UTF characters, while SAS counts bytes.
We use SAS/ACCESS Interface to Snowflake too and see the same behaviour.
A Google search suggests that this could be standard Snowflake behaviour: https://community.snowflake.com/s/article/Varchar-length-implicitly-increases-if-column-is-Uppercase...
Hi everyone,
I’m accessing Snowflake tables through SAS Data Integration Studio using the Snowflake connector.
When I register table from Snowflake in SAS DI, I noticed that VARCHAR(n) columns are automatically assigned LENGTH=3n in SAS metadata.
For example: VARCHAR(2) becomes LENGTH=6. Why does this happen, even though both systems use UTF-8?
Thanks in advance!
It's certainly worth to look into options DBCLIENT_MAX_BYTES and DBSERVER_MAX_BYTES
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
Need to connect to databases in SAS Viya? SAS’ David Ghan shows you two methods – via SAS/ACCESS LIBNAME and SAS Data Connector SASLIBS – in this video.
Find more tutorials on the SAS Users YouTube channel.