Ik vond deze link nuttig.
Hier is de paragraaf waarin enkele van de voor- en nadelen van elke benadering worden belicht.
Het meest voorkomende ontwerp is om de vele Boolean-achtige vlaggen te imiteren die Oracle's datadictionary-weergaven gebruiken, door 'Y' te selecteren voor waar en 'N' voor onwaar. Om echter correct te communiceren met hostomgevingen, zoals JDBC, OCCI en andere programmeeromgevingen, is het beter om 0 voor false en 1 voor true te selecteren, zodat het correct kan werken met de functies getBoolean en setBoolean.
In principe pleiten ze voor methode nummer 2, omwille van de efficiëntie, met behulp van
- waarden van 0/1 (vanwege interoperabiliteit met JDBC's
getBoolean()
etc.) met een controlebeperking - een type van CHAR (omdat het minder ruimte in beslag neemt dan NUMBER).
Hun voorbeeld:
create table tbool (bool char check (bool in (0,1)); insert into tbool values(0); insert into tbool values(1);`