![]() |
Datenbank: Access • Version: 2003 • Zugriff über: ADOquerry
ADOQuerry funktioniert nicht richtig
Hallo,
meine Select-Abfrage:
Delphi-Quellcode:
funktioniert eigentlich, jedoch ohne die "where Materialrollen.DatumAb = NULL" Anweisung. Das Feld "DatumAb" git es nur in der Tabelle "Materialrollen". Eigentlich müsste man die Tabelle "Materialrollen" vorselektieren. Aber möglicherweise geht Das auch in der oberen Anweisung. Könnte mir Jemand helfen?
Datamodule1.ADOQueryRollenLagerplatz.SQL.Add('SELECT Materialrollen.*, Rollenlager.Lagerplatz, RollenKommentar.Kommentar FROM (Materialrollen LEFT JOIN Rollenlager ON Materialrollen.Rollennummer = Rollenlager.Rollennummer)');
Datamodule1.ADOQueryRollenLagerplatz.SQL.Add('LEFT JOIN RollenKommentar ON Materialrollen.Rollennummer = RollenKommentar.Rollennummer where Materialrollen.DatumAb = NULL ORDER BY Materialrollen.DatumWE'); Gruß, Luckner |
AW: ADOQuerry funktioniert nicht richtig
Also ich würde sagen:
Ein Vergleich mit NULL immer so: <irgendeinfeld> is Null oder <irgendeinfeld> is not Null Da Du keine Fehlermeldung lieferst, wäre meine Prognose in der Form: Syntaxfehler bzw. immer leere Menge. Aber wer weiß, Access macht vielleicht auch das anders als alle anderen. Dann: Damit das mit dem Outerjoin und dem "is Null" dahinter klappt, würde ich die is null Prüfung mit in das Outerjoin Kriterium packen. |
AW: ADOQuerry funktioniert nicht richtig
den Fehler habe ich vergessen. Ohne die where-Anweisung werden alle Rollen angezeigt. Mit dieser Anweisung keine. Wobei ich weiß, dass es ca. 200 Einträge gibt, die das Kriterium "Materialrollen.DatumAb = NULL" erfüllen.
Luckner |
AW: ADOQuerry funktioniert nicht richtig
Hallo,
dann führe die Ursprungs-Query noch mal aus und sage uns den Fehler. |
AW: ADOQuerry funktioniert nicht richtig
Hallo jobo,
danke für den Hinweis nicht "where Materialrollen.DatumAb = NULL" sondern "where Materialrollen.DatumAb is NULL". Jetzt funktioniert es. Gruß, Luckner |
AW: ADOQuerry funktioniert nicht richtig
ADO schluckt "irgendwas=NULL" problemlos, da gibt es keine Fehlermeldung.
Gruß K-H |
AW: ADOQuerry funktioniert nicht richtig
Hallo,
auch bei Firebird klappt ein =NULL, ob das Ergebnis das gewünschte Ergebnis ist, darf angezweifelt werden. ![]() |
AW: ADOQuerry funktioniert nicht richtig
Zitat:
Zitat:
Ich habe im Eröffnungspost keine Erläuterung zum Problem gelesen, nicht mal das wörtliche "geht nicht". Ok, dafür war es ein "..funktioniert, aber nicht mit..". Ein erster Blick hat zwar das "=Null" ergeben, aber das muss ja nicht alles sein. Ich wollte einfach nur wissen, ob es Fehlermeldungen gibt und welche Erwartungshaltung vorliegt. Für die Akten: ADO ist es sicher sowieso egal, denn selbst die Datenbank interessiert es nicht, ob man den = Operator (und andere) auf NULL anwendet. |
AW: ADOQuerry funktioniert nicht richtig
Ich bin oft genug vor diese Wand gelaufen, der Fehler sitzt eben meist vor der Tastatur.
Gruß K-H |
AW: ADOQuerry funktioniert nicht richtig
Ja, sehr gemein auch die Variante NULL Feldinhalt konkateniert mit anderen Feldern oder Textkonstanten oder Null + <zahl>.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:58 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