Eine wirkungsvolle Konfiguration für boolesche Spaltenwerte

Zwar ist in Oracle kein boolescher Datentyp für Datenbankspalten enthalten, es stellt aber einen booleschen Datentyp in PL/SWL bereit. Jede durch einen booleschen Wert definierte Spalte sollte außerdem mit genauen Grenzbedingungen versehen werden, um sicherzustellen, dass beim Einfügen und bei der Aktualisierung nur gültige Werte zur Eingabe kommen.

In der am häufigsten verwendeten Konfiguration werden die vielen booleschen Werten gleichenden Flags der Ansichten des Data-Dictionary von Oracle nachgeahmt, wobei „Y“ für true und „N“ für false gewählt wird. Für ein korrektes Zusammenspiel mit Hostumgebungen wie zum Beispiel JDBC, OCCI und anderen Programmierumgebungen ist es jedoch besser, für false 0 und für true 1 zu wählen, damit die Funktionen getBoolean und setBoolean richtig ausgeführt werden können.

Ein boolescher Wert könnte als NUMBER(1) definiert werden, doch nimmt in Oracles internem Zahlenformat eine 0 ein Byte und eine 1 zwei Byte nach dem Längenbyte ein (so dass es effektiver ist, den Wert als CHAR zu speichern). SQL kann die Konvertierung und Überprüfung anhand tatsächlicher Zahlen auch mit einem als CHAR definierten Zeichen durchführen.

Hier ein Beispiel in Java:

Wird zudem in OCI, OCCI und PRO/C der gewählte Wert als Integer angefordert (SQLT_INT oder OCCIINT), wird er durch die clientseitigen Bibliotheken automatisch in eine binäre 0 beziehungsweise 1 konvertiert, die als native boolesche Werte verwendet werden können.

Hier dasselbe Beispiel in OCCI:

Page: 1 2

ZDNet.de Redaktion

Recent Posts

Studie: Ein Drittel aller E-Mails an Unternehmen sind unerwünscht

Der Cybersecurity Report von Hornetsecurity stuft 2,3 Prozent der Inhalte gar als bösartig ein. Die…

2 Tagen ago

HubPhish: Phishing-Kampagne zielt auf europäische Unternehmen

Die Hintermänner haben es auf Zugangsdaten zu Microsoft Azure abgesehen. Die Kampagne ist bis mindestens…

3 Tagen ago

1. Januar 2025: Umstieg auf E-Rechnung im B2B-Geschäftsverkehr

Cloud-Plattform für elektronische Beschaffungsprozesse mit automatisierter Abwicklung elektronischer Rechnungen.

3 Tagen ago

Google schließt schwerwiegende Sicherheitslücken in Chrome 131

Mindestens eine Schwachstelle erlaubt eine Remotecodeausführung. Dem Entdecker zahlt Google eine besonders hohe Belohnung von…

3 Tagen ago

Erreichbarkeit im Weihnachtsurlaub weiterhin hoch

Nur rund die Hälfte schaltet während der Feiertage komplett vom Job ab. Die anderen sind…

4 Tagen ago

Hacker missbrauchen Google Calendar zum Angriff auf Postfächer

Security-Experten von Check Point sind einer neuen Angriffsart auf die Spur gekommen, die E-Mail-Schutzmaßnahmen umgehen…

5 Tagen ago