Einzelnen Beitrag anzeigen

Humbucker

Registriert seit: 8. Feb 2013
Ort: im Lahntal
35 Beiträge
 
Delphi 10.4 Sydney
 
#25

AW: Fehlermeldung beim Zugriff auf die Datenbank

  Alt 18. Feb 2022, 10:44
Hallo Forum,

erst mal danke für die Antworten.

Um den Fehler einzugrenzen, würde ich das SQL-Statement vor dem Open kopieren und prüfen, ob das grundsätzlich korrekt ist. Am Besten in einem passenden SQL-Editor ansehen und laufen lassen.
Das funktioniert einwandfrei. Ich verwende Microsoft Access 365 und erzeuge hier eine SQL-Abfrage:
Code:
Select * from Adresse where ID = 1.
- so wirklich nichts spektakuläres.

Zitat:
Was mir gerade noch einfällt:
Du weist die Connection in der Routine zu. Ist die Connection denn aktiv? Meistens werden Connections durch ein auszuführendes Query zwar implizit aktiv, aber erstens geht es hier um Access und zweitens um einen ODBC-Treiber. Es könnte also durchaus sein, dass die Connection noch gar nicht bereit, bzw. nicht schnell genug bereit ist. Das würde dann auch erklären, warum es nur beim ersten Durchlauf Probleme gibt.
Die FDConnection (MyDB) ist geöffnet und verbunden. In der Routine wird das auch überprüft.
Delphi-Quellcode:
MyQuery := TFDQuery.Create(MyDB);
  try
    MyQuery.Connection := MyDB;
    if (MyQuery.Connection.Connected) and (aID > 0) then
    begin
      MyQuery.SQL.Text := 'select * from &pTabelle where ID = :pID';
      MyQuery.MacroByName('pTabelle').asRaw := aTabelle;
      MyQuery.ParamByName('pId').asInteger := aId;
      try
        MyQuery.open;
        .....
      except
        raise;
      end;
Das scheidet als Fehlerursache meines Erachtens aus. Zumal die Fehlermeldung auch keine Exception auslöst, was bei einer nicht geöffneten Connection der Fall wäre.

VG Michael
Michael H.

Geändert von Humbucker (18. Feb 2022 um 11:00 Uhr)
  Mit Zitat antworten Zitat