Empty strings and NULLs
At the SQL level, most databases distinguish '' empty strings from
NULL (with some exceptions like Oracle® DB). However, in programs, an empty string is the equivalent to
NULL in program variables. As result, it is not possible to distinguish an empty
string from a NULL when such values are fetched from the database. This limitation
is only visible when fetching VARCHAR columns and expressions fetched into
VARCHAR variables, because CHAR columns get filled with blanks if
the database returns a CHAR column value that was filled with an empty string;
CHAR columns get blanks up to the max size.