Einzelnen Beitrag anzeigen

raiguen
(Gast)

n/a Beiträge
 
#20

Re: EDatabaseError - auslesen aus DB

  Alt 1. Nov 2006, 17:15
Zitat von capo:
hallo und danke nun klappt es... bis auf eine kleine Fehlermeldung wenn ich zweimal hintereinander auf den Button klick:


Zitat:
---------------------------
Ungültiges Schlüsselwort

Symbol-String: select

Zeilennummer: 2.
---------------------------
Beim Code hab ich nur das close rausgenommen.
Ist klar, warum diese Meldung kommt:
in deinem Code steht Query1.SQL.Add(...), d.h. bei jedem Click auf den Button wird zur bereits bestehenden SQL-Anweisung eine neue (in diesem Fall die gleiche) hinzugefügt . Das Ergebnis ist:
select * from Rechnungen where BEZAHLT = :BEZAHLT
select * from Rechnungen where BEZAHLT = :BEZAHLT

Auf der sicheren Seite bist du, wenn du entweder
Delphi-Quellcode:
Query1.SQL.Clear; // alle Anweisungen löschen
Query1.SQL.Add('select * from Rechnungen where BEZAHLT = :BEZAHLT ') // Anweisung hinzufügen
Query1.SQL.Add('ORDER BY KDNR') // 2. Zeile (hier nur mal als Beispiel)
Query1.Open;
oder
Delphi-Quellcode:
//--neue Anweisung zuweisen: vorhandene Anweisung wird durch die neue ersetzt
Query1.SQL.Text := 'SELECT * FROM Rechnungen WHERE BEZAHLT = :BEZAHLT ORDER BY KDNR';
Query1.Open;
Im Übrigen wird eine offene Query automatisch geschlossen, sobal das SQL-Statement geändert wird; auf der sicheren Seite (und für den Fall des Debuggens) ist es immer besser, expliziet
Code:
Query1.Close
zu schreiben



Zitat von capo:
Hallo DocE
danke, hab ich gemacht, bekomme folgende Meldung:
Zitat:
---------------------------
Fehler
---------------------------
Query1: Keine SQL-Anweisung verfügbar.
---------------------------
OK
---------------------------
Auch das ist klar du hast versucht im ObjektInspektor Query1 auf Active=True zu setzen, hast aber bei der Eigenschaft SQL keine SQL-Anweisung eingetragen...
  Mit Zitat antworten Zitat