Abfrage von ja/nein-Feldern

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Abfrage von ja/nein-Feldern

von hjb » Mo, 06.02.2006 21:23

Hallo.
Kriterium muss in Klammern (Wahr) eingegeben werden.
Bei mir hat es jedenfalls so funktioniert (openoffice2.0).
:D

von Bigo » Do, 12.01.2006 09:09

Hallo,

im Abfrage-Assistenten von Base wird bei Ja/Nein-Feldern als Kriterium WAHR und FALSCH benutzt.

Sollte es dann immer noch nicht gehen (andere Fehlermeldung) wirst du ein ähnliches Problem haben wie ich ;)

von zillo » Sa, 29.10.2005 15:18

Also - ich habe mal eine neue Datenbank mit ca. 20 Ja/Nein-Felder erstellt (1 Tabelle und Formular). Habe dann 15 Datensätze mit Bildern eingegeben. Und anschließend noch eine Abfrage erstellt (mit dem altbekannten Folgen der Fehlermeldungen). Das ganze hatte eine Größe von 1,8MB. Anschließend habe ich alle JA/NEIN-Felder in Tiny Integer umgewandelt. Konnte natürlich eine funktionierende Abfrage erstellen. Bei der nächsten Speicherung war die Datenbank dann über 40MB groß, ohne dass weitere Daten hinzugefügt wurden.

Habe keine Ahnung über die Speichergewohnheit von OOo-Base. Habe allerdings das Ganze unter WinXP durchgeführt. Da ich hauptsächlich Linux (Suse9.3) benutze, müßte ich mal überprüfen, ob dieses Verhalten auch darunter festzustellen ist!

Größer werdende Datenbank

von SteffenOOo » Fr, 28.10.2005 20:34

Hallo!

also mit dem größer werden - das verstehe ich noch nicht ganz.
Ich verwende Mysql. Dort wird ebenfalls eine Datei angelegt wie bei der OpenOffice internen Datenbank. Die Größe dieser Datei ändert sich nur! durch zusätzliche Abragen, Formulare, Typen Änderungen,... - nicht aber durch neue Dateien ! Logisch, da diese in die Mysql Datenbak geschrieben werden.
Die Datei die OpenBase also anleget ist nur eine "programmierte Schnittstelle", die zwischen OpenOffice und Datenbank Mysql "vermittelt".
Deshalb steigt die Dateigröße nicht mit der Eingabe zusätzlicher Dateien.

Sie "enthält" offenbar alle Formulare, Abfragen,... - das war in der Vorgängerversion anders. Da gab es für jede Abfrage, Vorlage, Bericht eine eigene Datei - diese ließ sich auch extra öffnen - nun scheint das alles in dieser einen Datei integriert zu sein.
Bin ich da auf dem Holzweg?

Wie ist das nun mit der internen HSQL Datenbank, die OpenBase verwendet? Werden dort wirklich auch die Daten in eben diese Datei geschrieben? Dann müßte sie mit jedem Datensatz größer werden - Sie erscheint mir dann aber zu unsicher, wenn ebenfalls alle Formulare, Abfragen,.... mit gespeichert werden.

Bin ich da auf dem Holzweg?

von zillo » Fr, 28.10.2005 19:12

So - habe soeben Version 2.0 runtergeladen!

Problem bleibt bestehen.

Aber ein neues ist hinzugekommen: durch die Änderung des Feldtyps von JA/NEIN-Feld auf Tiny Integer erhöht sich die Dateigröße um einiges.

Habe spaßhalber mehrere JA/NEIN-Felder angelegt und diese anschließend in Tiny Integer umgewandelt und habe eine wesentlich größere Datei bzw. Datenbank erhalten, ohne dass neue Daten hinzugefügt wurden!

Ich denke schon, dass es ein Fehler ist!

von Harryburli » Fr, 28.10.2005 17:56

Hallo,
ich habe noch eine RC Version.

ist dieser Fehler auch in der Version 2.0 vorhanden?
Wenn ja sollte man es vielleicht an das OOo Projekt melden?

Liebe Grüße
Harryburli

von zillo » Fr, 28.10.2005 14:15

Ich habe das Ganze mal so nachvollzogen:

Habe die JA/NEIN-Felder per Hand in ein "TinyInteger"-Feld umgewandelt!
Danach konnte ich die Abfrage durchführen! Konnte sogar die entsprechenden Felder wieder in ein Ja/Nein-Feld umwandeln, was die vorhandene Abfrage entsprechend verändert, aber nicht funktionsunfähig, machte!
Nur wenn ich dann wieder eine komplett neue Abfrage erstelle bzw. die vorhandene Abfrage modifiziere, bekomme ich wieder entsprechende Fehlermeldungen.

Also werde ich mich wohl mit diesem Umweg behelfen müssen.

Wenn ich die OOo-Hilfe zu Rate ziehe, steht dort ja beschrieben, wie Ja/Nein-Felder abzufragen sind. Also müßte es ja auch funktionieren!
Handelt es sich um ein Fehler in OOo-Base?

Re: JA/Nein Problem

von Harryburli » Fr, 28.10.2005 10:17

SteffenOOo hat geschrieben:Hi!

also habe s auspribiert. Die HSQL Datenbank (davon reden wir) bringt False oder nichts (kannst du nachvollziehen, wenn du die Daten in Calc importierst. Die Abfrage funktioniert aber auch bei mir nicht - da kann ich dir nicht helfen.

Vorschlag zur Güte einfach ein Textfeld als Typ angeben und im Formular das entsehende textfeld in ein Eingabefeld in JA/Nein Feld ändern das schreibt nähmlich 1 oder O. Das müßte gehen.

MFG Steffen
Ich habe dass gleiche Problem, aber diese nicht ganz saubere Lösung funktioniert!
Vielen Dank!

JA/Nein Problem

von SteffenOOo » Do, 27.10.2005 19:54

Hi!

also habe s auspribiert. Die HSQL Datenbank (davon reden wir) bringt False oder nichts (kannst du nachvollziehen, wenn du die Daten in Calc importierst. Die Abfrage funktioniert aber auch bei mir nicht - da kann ich dir nicht helfen.

Vorschlag zur Güte einfach ein Textfeld als Typ angeben und im Formular das entsehende textfeld in ein Eingabefeld in JA/Nein Feld ändern das schreibt nähmlich 1 oder O. Das müßte gehen.

MFG Steffen

von zillo » Mi, 26.10.2005 22:45

Die Datenbank die ich benutze ist die in OOo integrierte Datenbank Base.

Ich erstelle sie über NEU-Datenbank und mit Anmeldung!

Bei mir bleibt in der Tabelle als Feldtyp "ja/nein" - also ändert sich nicht!

Kann mir immer noch kein Reim darauf machen!

von SteffenOOo » Mi, 26.10.2005 21:58

Hallo,

also ich habe mal das ganze nachgestellt - habe als ein Feld eingerichtet mit dem Feldtyp Ja/nein - nach dem Speichern wird daraus "Tiny Integer".

Formular erstellt (kann man Häckchen machen oder nicht) und Abfrage, bezahlt mit Abfrage Kriterium = 1,0 - alles funktioniert !!!!

Welche Grundlage der Datenbank verwendest denn du? Ich nehme Mysql, gehen aber auch andere - zum Nachstellen müßte ich wissen, was du nimmst.

MFG Steffen

von zillo » Mi, 26.10.2005 21:30

Hallo Steffen!

Wie ich bereits geschrieben habe, bin ich bezüglich Datenbanken absolut frisch dabei und kämpfe mich gerade durch OOo Base. Ich glaube, dass dies ein guter Einstieg ist.
Mit MySql habe ich mich noch gar nicht beschäftigt (Zeitfaktor!!!) - komme aber wohl nicht drumrum!
Ich versuche gerade Dein Lösungsvorschlag bez. des ja/nein-Feldes umzusetzen und werde mich später noch um das Problem bez. Relationen kümmern (schonmal Dank für die Antwort; habe es aber erst nur überflogen)!

Es möchte mir nicht gelingen eine Abfrage ohne entsprechende Fehlermeldungen (siehe vorheriges Posting) durchzuführen!

Darum hier meine Schritte:
1. Tabelle ist angelegt (Id=Primär/Name/bezahlt=ja/nein)
2. Tabelle gefüllt (probeweise Kästchen angekreuzt bzw. deaktiviert)
3. Abfrage erstellt; aus der einzigen Tabelle die Felder Name und bezahlt ausgewählt und per Drag and Drop herunter gezogen!

4. nur im Feld "Kriterium", und hier nur unter dem Feld "bezahlt", gebe ich die Ziffer 1 (oder 0) ein und erhalte wieder eine Fehlermeldung (in diesem Fall dann "Feld kann nicht mit Integer verglichen werden!")

Habe keine Ahnung!

Gruß

Zillo

von SteffenOOo » Mi, 26.10.2005 20:07

Hallo!

also es geht wirklich nur mit 1 oder 0 (bzw. nichts). Das Format ist aber keine Zahl sondern ein normales Zeichen und muß so ausgewertet werden. Also in der select Anweisung mit "1"

MFG Steffen

von zillo » Di, 25.10.2005 11:24

Erstmal schönen Dank für die schnelle Antwort!

Gebe ich eine Ziffer (0 oder 1) ein, erhalte ich die Meldung, dass das Feld mit Integer nicht verglichen werden kann!

Gebe ich z.B. false ein, bekomme ich "Syntaxfehler im SQL-Ausdruck"!
Bei JA oder Nein erhalte ich "Das angegebene Kriterium kann nicht mit dem Feld verglichen werden"!
Ein t oder f ergibt ein Syntax error!

Noch ein Tipp?

von pmoegenb » Di, 25.10.2005 10:56

Hallo Zillo,

normaler Weise steht in einem Boolean-Feld (Ja/Nein) ein Wert drin der wie folgt sein könnte (ist von DB zu DB unterschiedlich):

Ja = true oder t oder 1
Nein = false oder f oder 0

Vielleicht hilft dir das weiter.


Gruß

Peter

Nach oben