Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   mehrere DB Files mit Firebird Embedded (https://www.delphipraxis.net/155880-mehrere-db-files-mit-firebird-embedded.html)

AndyDF 11. Nov 2010 13:33

Datenbank: Firebird • Version: 2.1.3 • Zugriff über: IBX

mehrere DB Files mit Firebird Embedded
 
Hallo,

wir habe eine DLL entwickelt, welche eine Firebird DB (v2.1.3) embedded verwendet. Diese DLL wird von einer anderen Anwendung verwendet. Diese Anwendung verwendet wiederum eine eigene Firebird DB (v2.1.3) welche auch embedded angesprochen wird.

Es sollen also zwei DB-Files in einem Prozess embedded verwendet werden.

Zu dem Zeitpunkt wo unsere DLL geladen wird, erhalten wir folgenden Fehler beim Verbinden zur Datenbank:

"operating system directive CreateFile failed Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird."

Die Datenbank der Host-Anwendung ist zu diesem Zeitpunkt schon geladen.

Ist die Konstellation überhaupt möglich innerhalb eines Prozesses?
Für den Zugriff verwenden wir die IBX Komponenten.
An was könnte es sonst liegen?

Viele Grüße,
Andreas

mkinzler 11. Nov 2010 13:39

AW: mehrere DB Files mit Firebird Embedded
 
Erst ab FireBird 2.5, den ab dann basiert die embedded auf der neuen SuperClassic-Architektur.

AndyDF 11. Nov 2010 13:41

AW: mehrere DB Files mit Firebird Embedded
 
Danke für die schnell Antwort. Dann haben wir mit der v2.1.3 und dieser Konstellation keine Chance?

mkinzler 11. Nov 2010 13:44

AW: mehrere DB Files mit Firebird Embedded
 
Nein, den vor FB 2.5 basierte die embedded auf der SuperServer architektur, welche die Datei exklusiv lockt.

Aber versuch es doch einfach mal mit der Dll von FB 2.5 embedded.

AndyDF 11. Nov 2010 13:48

AW: mehrere DB Files mit Firebird Embedded
 
Danke für den Tipp. Werde ich mal ausprobieren.
Beide Anwendungen verwenden allerdings je eine eigene DB File. Das heißt die DB-File sollte zum Zeitpunkt der Verbindung eigentlich noch nicht gelockt sein.

mkinzler 11. Nov 2010 14:01

AW: mehrere DB Files mit Firebird Embedded
 
Dann sollte es eigentlich auch so funktionieren.
Mehrere Connections pro Prozess sollten eigentlich auch kein Problem darstellen

AndyDF 11. Nov 2010 14:24

AW: mehrere DB Files mit Firebird Embedded
 
Ich habe es jetzt mal mit der Embedded Version von Firebird 2.5 versucht da scheint es zu funktionieren. Die andere Anwendung verwendet allerdings noch 2.1.3.
Danke für die Hilfe.

Viele Grüße,
Andreas


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:51 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