AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Feld nicht gefunden obwohl vorhanden!
Thema durchsuchen
Ansicht
Themen-Optionen

Feld nicht gefunden obwohl vorhanden!

Ein Thema von skoschke · begonnen am 10. Dez 2018 · letzter Beitrag vom 12. Dez 2018
Antwort Antwort
skoschke

Registriert seit: 6. Jan 2009
523 Beiträge
 
Delphi 10.4 Sydney
 
#1

Feld nicht gefunden obwohl vorhanden!

  Alt 10. Dez 2018, 13:47
Datenbank: sqlite • Version: ? • Zugriff über: FDQuery
Hallo,

bei folgendem Code (Ausschnitt) wird das Feld "zugang" beim Lesen nicht gefunden, obwohl vorher beschrieben wurde!

Delphi-Quellcode:
    FDQuery.SQL.Text := 'Select * from Settings';
    FDQuery.Open;
    if FDQuery.RecordCount = 0 then
    begin
      FDQuery.Append;
      FDQuery.Edit;
      FDQuery.FieldByName('zugang').AsString := '???'; // Beschreiben ohne Fehlermeldung
      FDQuery.Post;
    end;
    //... hier werden noch andere Felder gelesen
    // Zugang lesen
    settings.zugang := FDQuery.FieldByName('zugang').AsString; // <-- hier kommt Fehler, das Feld "zugang" wurde nicht gefunden
Ich habe keine Ahnung, wo ich suchen könnte!
Wenn ich in die DB schaue ist die Spalte zugang da und mit ??? gefüllt!

Tips?

Ciao
Stefan
  Mit Zitat antworten Zitat
Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.367 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Feld nicht gefunden obwohl vorhanden!

  Alt 10. Dez 2018, 14:01
Ändere den Source mal wie folgt:
Delphi-Quellcode:
    FDQuery.SQL.Text := 'Select * from Settings';
    FDQuery.Open;
    if FDQuery.RecordCount = 0 then
    begin
      FDQuery.Append;
      FDQuery.Edit;
      FDQuery.FieldByName('zugang').AsString := '???'; // Beschreiben ohne Fehlermeldung
      FDQuery.Post;
    end;
    settings.zugang := FDQuery.FieldByName('zugang').AsString;
    //... hier werden noch andere Felder gelesen
Wenn du den Fehler nicht mehr bekommst, ist der Fehler in den Bereich, wo du noch was mit mit den anderen Feldern machst.
Falls der Fehler aber immer noch da ist, kann ich spontan nicht sagen, was das sein kann.
Peter
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.869 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Feld nicht gefunden obwohl vorhanden!

  Alt 10. Dez 2018, 14:03
Vielleicht tritt der Fehler auch bei der Variable settings auf.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.367 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Feld nicht gefunden obwohl vorhanden!

  Alt 10. Dez 2018, 14:05
Vielleicht tritt der Fehler auch bei der Variable settings auf.
War auch mein erster Gedanke. Aber dann hätte ja schon der Compiler gemeckert.
Peter
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.869 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Feld nicht gefunden obwohl vorhanden!

  Alt 10. Dez 2018, 14:07
Zitat:
War auch mein erster Gedanke. Aber dann hätte ja schon der Compiler gemeckert.
Es kommt darauf an, was hinter settings steckt.
Markus Kinzler
  Mit Zitat antworten Zitat
skoschke

Registriert seit: 6. Jan 2009
523 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Feld nicht gefunden obwohl vorhanden!

  Alt 10. Dez 2018, 14:39
settings ist nur ein Record...

Jasocul hat recht!
Bei den Feldern, welche vorher gelesen werden, ist auch eines ala

settings.passwort := Decrypt(FDQuery.FieldByName('passwort').AsString);

wobei Decrypt nur eine einfache Entschlüsselungsroutine ist, die an dem Feld nichts tut!

Neue Variante:

Delphi-Quellcode:

settings.passwort := FDQuery.FieldByName('passwort').AsString;
settings.zugang := FDQuery.FieldByName('zugang').AsString;
//... weitere Felder lesen
settings.passwort := Decrypt(settings.passwort);
Und der Fehler ist weg

Danke für den Denkanstoß!

Ciao
Stefan

Nachtrag:
Der Code vom Anfang des Threads hat jahrelang funktioniert, erst nach einer Änderung im Programm an einer ganz anderen Stelle (Optik, die nichts mit dem DB-Handling zu tun hat!) kam der beschriebene Fehler!

Geändert von skoschke (10. Dez 2018 um 15:06 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:38 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 by Thomas Breitkreuz