Ja, zo werkt Oracle. Lege strings worden behandeld als nulls.
U kunt dit natuurlijk op applicatieniveau "repareren" - bijvoorbeeld door " "
op te slaan waarden zoals u suggereerde - maar bedenk eerst, wat is precies het verschil met uw "lege tekenreeks" -waarden in vergelijking met NULL
waarden? Waarom moet je ze anders behandelen? Ik liep ook tegen dit dilemma aan, maar kwam er meestal achter dat er maar weinig gevallen zijn waarin ik het verschil echt moet zien.