Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   FireDac-Verbindung zur DB (https://www.delphipraxis.net/181973-firedac-verbindung-zur-db.html)

Hansa 22. Sep 2014 12:09

Datenbank: FB • Version: 2.5 • Zugriff über: FireDac

FireDac-Verbindung zur DB
 
Moin,

experimentiere im Moment etwas mit FireDac. Da gibts aber immer wieder Probleme bei der Verbindung zur DB (soll im DataModuleCreate erfolgen). Im Moment habe ich folgenden Fall : Connection der Verbindung ist active : nichts geht. Ich komme nicht mal im DataModulCreate an. Ist die Connection auf false, dann lande ich zwar zumindest im DataModulCreate, aber sobald irgendwas in dem Datamodul angesprochen wird, dann kommt : Transaction must be active. Im Oi kann man da nichts einstellen und StartTransaction nützt auch nichts, da kommt auch diese Meldung.

Wenn es mir gelingt diese Hürden zu überwinden (ging einmal, aber keine Ahnung wieso ?), und ich nutze so ein Konstrukt :

Query.Close;
Query.SQL.Text := 'select * from tableX';
Query.Open;

dann steigt das Programm direkt schon beim ersten Zugiffsversuch auf die DB aus, also hier schon beim Close. Letzteres das ging bisher immer. Egal welche DB oder Komponenten. Was stört denn fireDac da dran ?

mjustin 22. Sep 2014 12:37

AW: FireDac-Verbindung zur DB
 
Zitat:

Zitat von Hansa (Beitrag 1273371)
Ist die Connection auf false, dann lande ich zwar zumindest im DataModulCreate, aber sobald irgendwas in dem Datamodul angesprochen wird, dann kommt : Transaction must be active. Im Oi kann man da nichts einstellen und StartTransaction nützt auch nichts, da kommt auch diese Meldung.

Um das DataModul als Störfaktor auszuschlüssen, könnte man es mit einer Kommandozeilenapplikation versuchen. Darun nur eine Unit mit einer Methode, in der die Connection erzeugt und geöffnet wird. Das "muss" funktionieren ;)

MichaelT 22. Sep 2014 14:21

AW: FireDac-Verbindung zur DB
 
Habs probiert in allen Variationen geht. Hätte mich gewundert ...

Frage
a) Hast du die FireDAC.Phys.FB eingebunden - d.h. einen TFBPhysDriverLink mal reingezogen (ist zwar egal, sobald die Connenction den DB Typ eingestellt bekommt sollte der drinnen sein)
b) Hast du eine gdsXX.dll und eine fbclient.dll gemischt

Stirbt deine Anwendung einfach? Sprich erscheint nicht und bleibt hängen? Unter 64bit wäre das ein Zeichen an sich für fehlenden Waitcursor oder Treiber Link ... unter 32 bit müsste die Sache zumindest eine Exception werfen...

Zitat:

Zitat von Hansa (Beitrag 1273371)
Moin,

dann steigt das Programm direkt schon beim ersten Zugiffsversuch auf die DB aus, also hier schon beim Close. Letzteres das ging bisher immer. Egal welche DB oder Komponenten. Was stört denn fireDac da dran ?



Alle Zeitangaben in WEZ +1. Es ist jetzt 18:14 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz