Seite 1 von 1

Markierfeld abfragen

Verfasst: So, 09.03.2008 18:38
von bello15
Hallo,
habe mir in eine OOo DB Tabelle ein Markierfeld eingefügt und kann so per Haken markieren, ob ein Datensatz als aktuell gilt, auch wenn ich die nicht mehr aktuellen Datensätze trotzdem behalten will. Nun will ich eine Abfrage, die nur die Datensätze liefert, die das Markierfeld mit Haken haben.
Probiert habe ich:
WHERE ("MarkierFeldname" WAHR)
WHERE ("MarkierFeldname" = WAHR)
WHERE ("MarkierFeldname" IS NOT NULL)
WHERE ("MarkierFeldname" = IS NOT NULL)
Leider gibt das immer einen Fehler "SQL-Status: 37000 Fehler-Code: -11"
Kann mir bitte jemand helfen?

Re: Markierfeld abfragen

Verfasst: So, 09.03.2008 19:23
von komma4
Laut HSQLDB-Dokumentation besteht der Inhalt einer bool'schen Variablen aus den Zeichenketten TRUE, FALSE oder NULL
For BOOLEAN columns, the literals FALSE, TRUE, NULL.
...dann solltest Du wohl

Code: Alles auswählen

WHERE ("MarkierFeldname" = 'TRUE' ) 
verwenden (von mir ungetestet!).

Probierst Du es aus uns berichtest uns? Danke!

Re: Markierfeld abfragen

Verfasst: Mo, 10.03.2008 15:26
von bello15
Hallo komma4,
habe Deinen Tipp mit WHERE("MarkierFeldName" = 'TRUE' ) probiert und es läuft einwandfrei. Danke !
Aber weil Du geschrieben hast auch NULL und FALSE sind möglich, habe ich diese beiden Möglichkeiten auch ausprobiert. Es gibt kein SQL Fehler, aber es werden auch keine Datensätze angezeigt, obwohl vorghanden. Nun hast Du den link für HSQLDB eingefügt und ich habe dort etwas gefunden.
Verwende ich WHERE MarkierFeldName IS NOT NULL kommt das gleiche Ergebnis wie bei WHERE("MarkierFeldName" = 'TRUE' ) und
verwende ich WHERE MarkierFeldName IS NULL kommen alle die anderen Datensätze in der Abfrage.
So habe ich die Möglichkeit sowohl markierte als auch nicht markierte Datensätze in eine Abfrage reinzubekommen.