Skip to content
Advertisement

why empty values are allowed but not null values in composite primary keys

I am working on an App connecting to the Snowflake database. I stumbled upon an issue while loading CSV files. I was using the NULL_IF condition in copy command to change column value to null if any empty value is encountered during the load

On investigation, I came to know that one of the columns is part of the composite primary key, and the value for this column was empty in a few rows. after I removed the NULL_IF condition, It started working fine.

Why empty values are allowed but not null values in composite primary keys?

I searched a lot, but all the answers are trying to explain why a composite key column can not have null values and it somewhat makes sense. But then why empty value is considered legit? Can somebody please explain? Thanks

example:

Following Insert will succeed:

Following Insert will fail:

Advertisement

Answer

why empty value is considered legit

Empty Strings and NULL Values

An empty string is a string with zero length or no characters, whereas NULL values represent an absence of data.

Thus an empty string is conceptually different than NULL.

User contributions licensed under: CC BY-SA
9 People found this is helpful
Advertisement