Guten Abend,
ich bin schon wieder mit meinem Latein am ende ^^.
Der Fehler klingt erstmal einfach, nur ist dieser es nicht.
Der Fehler tritt bei Item.SubItems.Add(Frm_main.Que_MFA.FieldByName('Menge').AsString); auf.
SQLite / TSQLQuery "Field not Found"
SQLite / TSQLQuery "Field not Found"
- Dateianhänge
-
- db.png (26.63 KiB) 2035 mal betrachtet
-
- Anmerkung 2020-08-06 002818.png (35.73 KiB) 2035 mal betrachtet
Re: SQLite / TSQLQuery "Field not Found"
Listview? Der Screenshot sieht aus wie ein TreeView.
[EDIT] Ach so, der Treeview soll die Struktur der Datenbank-Tabelle anzeigen. Etwas mehr Text --> weniger Raten....
[EDIT] Ach so, der Treeview soll die Struktur der Datenbank-Tabelle anzeigen. Etwas mehr Text --> weniger Raten....
- af0815
- Lazarusforum e. V.
- Beiträge: 6762
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Re: SQLite / TSQLQuery "Field not Found"
Wie lautet die Fehlermeldung genau ? Nur Field not found ?
Das Feld ist als Integer definiert. Wird es auch dann nicht gefunden, wenn du es mit AsInteger abfragst ? Oder hat sich da vielleicht ein NULL Wert in die Tabelle eingeschmuggelt. Ohne genaue Fehlermeldung ist das immer ein Rätselraten.
Remarks:
a) Ich sehe keine Überprüfung ob da überhaupt Daten kommen (EOF und BOF zusammen abfragen)
b) Verwende Parameter und kein Stringgefrickel im SQL Text.
c) Verwende try except um Fehler auch richtig behandeln zu können. NULL Werte in der DB können recht rasch bei einer Typumwandlung zu einer Exception führen. Genauso wenn die Abfrage keine Daten liefert oder es beim öffnen der Query ein Problem gibt.
Das Feld ist als Integer definiert. Wird es auch dann nicht gefunden, wenn du es mit AsInteger abfragst ? Oder hat sich da vielleicht ein NULL Wert in die Tabelle eingeschmuggelt. Ohne genaue Fehlermeldung ist das immer ein Rätselraten.
Remarks:
a) Ich sehe keine Überprüfung ob da überhaupt Daten kommen (EOF und BOF zusammen abfragen)
b) Verwende Parameter und kein Stringgefrickel im SQL Text.
c) Verwende try except um Fehler auch richtig behandeln zu können. NULL Werte in der DB können recht rasch bei einer Typumwandlung zu einer Exception führen. Genauso wenn die Abfrage keine Daten liefert oder es beim öffnen der Query ein Problem gibt.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
Re: SQLite / TSQLQuery "Field not Found"
Das erste Bild zeigt den DB Browser
Das zweite den Quellcode dahinter.
Du hast recht, saubere programmiert hätte es sein sollen, nur kam ich noch nicht dazu.
Ein NULL Wert ist nicht enthalten und die anderen Felder werden auch gefunden. Mit AsInteger hatte ich noch nicht probiert, weil es mit ID auch geklappt hat.
Ich werde jetzt erstmals einpaar Tests durchlaufen um dem Fehler auf die schliche zu kommen.

Das zweite den Quellcode dahinter.
Du hast recht, saubere programmiert hätte es sein sollen, nur kam ich noch nicht dazu.
Ein NULL Wert ist nicht enthalten und die anderen Felder werden auch gefunden. Mit AsInteger hatte ich noch nicht probiert, weil es mit ID auch geklappt hat.
Ich werde jetzt erstmals einpaar Tests durchlaufen um dem Fehler auf die schliche zu kommen.
Re: SQLite / TSQLQuery "Field not Found"
Wie sagt man so schön. Aus Fehlern lernt man. 

- Dateianhänge
-
- Anmerkung 2020-08-06 232737.png (20.91 KiB) 1937 mal betrachtet
-
- Beiträge: 93
- Registriert: Di 17. Apr 2012, 22:41