Almost.
The 'normal' way of doing it is to design the database so that there is no 'NOT NULL' constraint.
Then if you really don't want to enter a value for that field, it will contain NULL.
If a field is defined as 'NOT NULL' then obviously you can't check for IS NULL, and you will have to check for <> ""
SELECT *
FROM table
WHERE field <> "";
Not pretty, but it works.
Note: unless I am much mistaken, Oracle treats an empty string as NULL, and it will refuse to let you do:
UPDATE table
SET field=""
WHERE foo=bar;
if 'field' is defined as NOT NULL.