![]() |
Datenbank: Firebird • Version: 2.5 • Zugriff über: bde
Datensatz löschen wenn Felder leer (NULL) sind
Seit Tagen versuche ich per Delete Datensätze zu löschen. Sowie eines der Felder jedoch keinen Wert (also NULL) enthält scheitert die SQL.
... is null ... ... = NULL ... Wo finde ich Hilfe zur Syntax? Danke für jeden Hinweis. |
AW: Datensatz löschen wenn Felder leer (NULL) sind
Hallo und willkommen in der DP. :-)
Die BDE unterstützt Standard-SQL. So aus der Erinnerung: "delete from TABLE where FIELD is null" Ich hoffe, das stimmt so (ist länger her bei mir). |
AW: Datensatz löschen wenn Felder leer (NULL) sind
Allgemein findest Du das direkt in der Firebirddokumentation.
Poste doch mal Deinen Tabellenaufbau und erkläre, was Du löschen möchtest, dann können wir versuchen, Dir einen Schubs in die richtige Richtung zu geben. |
AW: Datensatz löschen wenn Felder leer (NULL) sind
Was bedeutet denn "scheitert"?
Gibt es einen Fehler? Welchen? Oder wird einfach nicht gelöscht? Sowohl Firebird als auch die BDE gehorchen auf "<feldname> is NULL". In einer Löschanweisung -du sprichst von "eines der Felder jedoch keinen Wert"- muss das Löschkriterium dann ggF. mit "or <feldname> is null" kombiniert werden. Bei 2 Kriterienfeldern dann bspw.:
Code:
* damit werden u.U. sehr viele Datensätze gelöscht, kommt drauf an, ob das gewollt ist.
delete from <tabelle>
where (a_id = :param1 and b_id = :param2) or (a_id is null and b_id = :param2) or (a_id = :param1 and b_id is null) [or (a_id is null and b_id is null)]* Gibt es noch mehr delete Kriterien, die Null sein können, erweitern sich die Kombinationen entsprechend. BDE selbst arbeitet mit "Local SQL", siehe z.B. hier ![]() Firebird findest Du hier: ![]() |
AW: Datensatz löschen wenn Felder leer (NULL) sind
Da staune ich nicht schlecht: Habe sicherlich auf Euren Seiten schon hunderte Mal reingeschaut aber noch nie etwas nachgefragt. Und nun am Sonntag-Nachmittag gleich drei Antworten.:-D
[Feld] is null war schon die Lösung. Ich hatte [Feld] = is null eingegeben. Vielen Dank und noch 'nen schönen Nikolaus-Abend |
AW: Datensatz löschen wenn Felder leer (NULL) sind
Prima, dann die obligatorische Warnung heute mal am Schluss- anscheinend nuckeln alle noch an Ihrer Schokolade:
BDE so schnell wie möglich austauschen. Taugt höchstens noch zum Basteln. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:38 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz