an empty string IS a NULL. There is no difference at all.
I think the point is you can not select the data using, e.g.WHERE colname = ''.
So how do you represent unknown values? By using a default "UNKNOWN"?
Sometimes you know what the value is, and it's blank. There's just too many ways to look at it..