Autor Beitrag
Schneubel-Tier
Hält's aus hier
Beiträge: 3



BeitragVerfasst: Di 20.01.04 14:06 
Hallo,
habe in meinem Programm SQL-Abfragen über ADO auf MS Access-Datenbanken integriert. Die Ausgabe erfolgt in einem DB-Grid. Da die Abfragen während der Laufzeit erstellt werden und von Benutzereingaben abhängig sind, kann es vorkommen, dass die SQL-Abfrage kein Ergebnis liefert, da zu der Eingabe des Users kein passender Datensatz vorhanden ist. Wie kann ich ein leeres Ergebnis aus dieser SQL-Abfrage abfangen, sodass ich dann einen entsprechenden Hinweis erscheinen lassen kann, dass die Eingabe ungültig ist und kein passender Datensatz gefunden wurde?
Hoffe, habs nicht zu umständlich geschrieben... :oops:

Aber danke schon mal.

Schneubel-Tier
Andi1982
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 497

WinXP HE
D6 Enterprise
BeitragVerfasst: Di 20.01.04 14:10 
Oh ja, so sowas interessiert mich auch, kann man nicht irgendwie auf SQL-Code 100 abfragen???

_________________
Solange die Bombe tickt ist alles in Ordnung, erst wenn sie damit aufhört wird es problematisch...
CenBells
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1547

Win 7
Delphi XE5 Pro
BeitragVerfasst: Di 20.01.04 16:22 
hallo,

ich vermute, die abfrage wird mit einer Query von der DB geholt? Dann ist es relativ einfach.
Man kann einfach abfragen, ob Query.RecordCount = 0 ist.

Gruß
Ken

_________________
Eine Klasse beschreibt die Struktur und das Verhalten einer Menge gleichartiger Objekte.
Böser Borstel
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 154



BeitragVerfasst: Mi 21.01.04 08:50 
ausblenden Quelltext
1:
2:
3:
4:
if Query.FieldByName(PRIMARY_KEY).asString <> '' then
   Result := 'DATEN VORHANDEN'
else
   Result := 'KEINE DATEN VORHANDEN';


für PRIMARY_KEY setze ein Schüsselfeld deiner Tabelle ein
KidPaddle
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 351

WinXP,Linux
D7 Prof, XE7
BeitragVerfasst: Mi 21.01.04 09:13 
Die einfachste Methode ist Query.IsEmpty oder ((Query.EOF = True) and (Query.BOF = True)) zu verwenden, da es, je nach Datenbank, vorkommen kann, das RecordCount den Wert -1 liefert.

Gruß
KidPaddle