🙏 Bitte helfen Sie uns das LibreOffice Forum zu erhalten. 🙏
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.

🍀 Wir hoffen auf Ihre Unterstützung - vielen Dank!🍀

❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

[gelöst] Ja/Nein-Feld Wert per SQL zuweisen?

Base ermöglicht es Ihnen, Ihre Daten in einer Datenbank direkt mit LibreOffice zu bearbeiten.
Antworten
Pit Zyclade
* LO-Experte *
Beiträge: 3041
Registriert: Mo 12. Nov 2012, 16:59

[gelöst] Ja/Nein-Feld Wert per SQL zuweisen?

Beitrag von Pit Zyclade » Do 15. Mai 2025, 14:59

Ich habe eine Tabelle mit ja/nein- Feldern und möchte mir per SQL händischen Eintrag ersparen:
z.B. heißt das Ja-Nein-Feld "Woh", ein Textfeld "Wohnung", die Tabelle "Blumenzubehör" und per SQL gebe ich ein:

update "Blumenzubehör" set "Woh" = TRUE where "Wohnung" <> '' Das klappt
update "Blumenzubehör" set "Woh" = FALSE where "Wohnung" = '' Das klappt ?
aber den indifferenten Fall (leeres Kästchen) klappt nicht, z.B.
update "Blumenzubehör" set "Woh" = 0 where "Wohnung" '''
oder
update "Blumenzubehör" set "Woh" = NULL where "Wohnung" ''

Wie kann ich den indiferenten Fall per SQL zuweisen?
Zuletzt geändert von Pit Zyclade am Sa 17. Mai 2025, 13:32, insgesamt 1-mal geändert.
LO 24.8.7.2 (X86_64) / Windows 11 64bit
Problem gelöst? Dann bitte im Betreff der ersten Nachricht [gelöst] voranstellen.

Freischreiber
* LO-Experte *
Beiträge: 829
Registriert: Fr 28. Mär 2014, 10:41

Re: Ja/Nein-Feld Wert per SQL zuweisen?

Beitrag von Freischreiber » Do 15. Mai 2025, 15:51

Hallo Pit,
Wie kann ich den indiferenten Fall per SQL zuweisen?
Brauchst du den indifferenten Fall? Sonst kannst du die Boolean-Tabellenspalte auch eingabepflichtig machen.
Vorher würde ich allerdings die NULL-Werte auf FALSE setzen.

Das wäre dann erst
UPDATE "Blumenzubehör" SET "Woh" = FALSE where "Wohnung" IS NULL (oder ... where "Wohnung" = '' ?)

und dann
ALTER TABLE "Blumenzubehör" ALTER COLUMN "Woh" SET NOT NULL

Bitte das nur an einer DB-Kopie durchführen. Ganz sicher bin ich mir nicht.

Gruß
Freischreiber
Freischreiber nutzt seit 1/2025 LibreOffice Version 7.2.7.2 unter Windows 11 und SplitDB mit HSQL 2.7.4.
Lesenswert: https://wiki.documentfoundation.org/ReleasePlan/de

Pit Zyclade
* LO-Experte *
Beiträge: 3041
Registriert: Mo 12. Nov 2012, 16:59

Re: Ja/Nein-Feld Wert per SQL zuweisen?

Beitrag von Pit Zyclade » Fr 16. Mai 2025, 11:45

Danke Freischreiber !

Habe eine Kopie genommen. Habe dann die gesamte Spalte auf FALSE gesetzt und erst jetzt gemerkt, dass der leere Kasten = FALSE ist und nicht "-". Also, ich bin alt und befangen, benötige ja gar keine Lösung mehr!

Aber aus Neugier habe ich dann deine letzte Zeile
alter table ... alter column ... SET NOT NULL
probiert und auch das Gegenteil
alter table ... alter column ... SET NULL
Beide Schritte werden akzeptiert, jedoch ändert sich in der Spalte gar nichts (was auch bereits angezeigt wird, dass gar keine Zeile geändert wurde: 0 rows updated)

Also haben wir keinen Weg gefunden, das - Zeichen zu erzeugen. Aber dennoch schließe ich meine Frage, weil unnötig!
LO 24.8.7.2 (X86_64) / Windows 11 64bit
Problem gelöst? Dann bitte im Betreff der ersten Nachricht [gelöst] voranstellen.

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: Ja/Nein-Feld Wert per SQL zuweisen?

Beitrag von F3K Total » Fr 16. Mai 2025, 15:12

Moin, ist doch ganz einfach:
P3.png
P3.png (25.52 KiB) 878 mal betrachtet
P2.png
P2.png (25.38 KiB) 878 mal betrachtet
P1.png
P1.png (25.81 KiB) 878 mal betrachtet
Alle drei Stati, TRUE, FALSE, NULL werden richtig angezeigt, wenn man die Tabelle aktualisiert.
Es kann sein, dass das im Formular nicht so ist, wenn man den Dreifachstatus nicht aktiviert hat, Standard ist
Dreifacher Status = Nein, also auf Ja umstellen.
P4.png
P4.png (15.62 KiB) 878 mal betrachtet
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO

Pit Zyclade
* LO-Experte *
Beiträge: 3041
Registriert: Mo 12. Nov 2012, 16:59

Re: Ja/Nein-Feld Wert per SQL zuweisen?

Beitrag von Pit Zyclade » Fr 16. Mai 2025, 16:27

Danke F3K Total !!

Du hättest doch nur die SQL-Zeile schreiben müssen, dann hätte ich das gleich selber probiert.
Manchmal ist man leider geistig blind... (Ich meine mich damit)

Übrigens erst heute habe ich deinen Hinwei zur Markierfeld-Formatierung nachvollzogen (Dreifach oder nicht).
Danke auch dafür!
LO 24.8.7.2 (X86_64) / Windows 11 64bit
Problem gelöst? Dann bitte im Betreff der ersten Nachricht [gelöst] voranstellen.


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten