Einzelnen Beitrag anzeigen

TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.942 Beiträge
 
Delphi 12 Athens
 
#1

SQL mit parameter und NULL oder normalen Werten

  Alt 5. Mär 2023, 14:40
Datenbank: Firebird • Version: 2.5 • Zugriff über: FireDAC
Hallo,

gegeben sei ein SQL Statement wie dieses:

select ID, BelegNr, BelegDatum
from MyTable
where (BelegNr = :pBelegNr)

Jetzt kann es in der Tabelle Belege geben, die schon eine ID haben aber noch keine BelegNr.
BelegNr ist ein Integer.

Delphi-Quellcode:
FMyQuery.ParamByName('pBelegNr').AsInteger := 123;
FMyQuery.Open;
Sollte also den Beleg 123 "beschaffen". Soweit funktioniert das auch.
Aber wie beschaffe ich alle Belege die noch NULL sind?

Delphi-Quellcode:
FMyQuery.ParamByName('pBelegNr').Clear;
FMyQuery.Open;
Sollte das soweit ich die Hilfe verstehe tun, macht es aber nicht.
Ich bekomme 0 Records geliefert. Baue ich den Select so um:

select ID, BelegNr, BelegDatum
from MyTable
where (BelegNr is NULL)

bekomme ich problemfrei alle NULL Belege...
Woran kann das liegen? Was müsste ich ändern, damit es mit dem parameter für
beide Szenarien funktioniert?

Grüße
TurboMagic
  Mit Zitat antworten Zitat