Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi unsupported on-disk structure for file (https://www.delphipraxis.net/174812-unsupported-disk-structure-file.html)

stahli 11. Mai 2013 15:41

Datenbank: Firebird • Version: 2.5 • Zugriff über: FireDAC

unsupported on-disk structure for file
 
Ich habe jetzt mal versucht, eine FB-Datenbank mit FireDAC zu benutzen.
Hier meine Erfahrungen und Probleme:

Die Datenbank (FB 2.5) habe ich mit IBExpert angelegt.

IBExpert benötigt die GDS32.dll.
FireDAC benötigt aber die FBClient.dll
Ich erhielt folgenden Fehler: "[FireDAC][Phys][IB]connection rejected by remote Interface"
Zur Bereinigung muss man die addrivers.ini suchen und dort folgendes eintragen:
Zitat:

[IB]
VendorLib=fbclient.dll
Beide dll´s müssen dann im Systemordner liegen.

Jetzt erhalte ich folgenden Fehler: "[FireDAC][Phys][IB]unsupported on-disk structure for file xxxx.FDB;found 15.0,support 11.2".
Unterstützt FireDAC FB 2.5 nicht?
Oder muss ich etwas bei der DB-Erstellung beachten?

EDIT: Ich habe jetzt (nachgedacht und) im IBExpert direkt fbclient.dll eingestellt. Damit funktioniert es.

grl 11. Mai 2013 16:15

AW: unsupported on-disk structure for file
 
Fein, daß es schon funktioniert!

Prinzipiell klingt das für mich so als hättest du nicht eine Client-DLL am laufen sondern die embedded-Variante von Firebird.
Und da eine ältere Version als die, mit der die Datenbank erzeugt wurde.

Prinzipiell sind auch bei aktuellen Releases von Firebird gds32.dll und fbclient.dll dabei bzw. ist das die gleiche Datei nur mit einem anderen Namen....

Luggi

IBExpert 11. Mai 2013 18:12

AW: unsupported on-disk structure for file
 
Zitat:

Zitat von stahli (Beitrag 1215039)
IBExpert benötigt die GDS32.dll.

nein, das kannst du bei der Datenbankregistrierung in IBExpert frei einstellen
Punkt 14 : http://ibexpert.net/ibe/index.php?n=...tabase#General

Zitat:

Zitat von stahli (Beitrag 1215039)
Beide dll´s müssen dann im Systemordner liegen.

nein, jedenfalls nicht die für IBExpert

Zitat:

Zitat von stahli (Beitrag 1215039)
Jetzt erhalte ich folgenden Fehler: "[FireDAC][Phys][IB]unsupported on-disk structure for file xxxx.FDB;found 15.0,support 11.2".
Unterstützt FireDAC FB 2.5 nicht?
Oder muss ich etwas bei der DB-Erstellung beachten?

ODS 15.0 ist eine Interbase Datenbank, die du wahrscheinlich via interbase gds32.dll aus dem Systempfad mit ibexpert erzeugt hast.

Zitat:

Zitat von stahli (Beitrag 1215039)
EDIT: Ich habe jetzt (nachgedacht und) im IBExpert direkt fbclient.dll eingestellt. Damit funktioniert es.


na bitte :-)

stahli 16. Mai 2013 22:09

AW: unsupported on-disk structure for file
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich komme einfach nicht klar. :-(

Teilweise konnte ich die Datenbank in meinem Projekt benutzen, nach dem nächsten Systemstart ging es dann nicht mehr.
FireDAC neu installieren brachte z.T. Besserung, aber nicht immer und jetzt gar nicht mehr.

Im Moment erhalte ich Fehlermeldungen wie "missing arg #4" (siehe Anhang).
Mit IBExpert scheint die DB i.O.

Ich bin jetzt ratlos, woran es liegen soll: FireBird, FireDAC, IBExpert?

Firebird ist 2.5.2. Nicht embedded.
FireDAC ist die XE3-Version. Das Update ist ja nur für Nutzer von XE4 verfügbar.
IBExpert ist etwas älter (2009.06.15). :-( Holger, was meinst Du, sollte ich mal updaten? :mrgreen: Bzw. wäre mit einer aktuellen Version da eine klare Besserung zu erwarten? Bisher hatte ich mit Datenbanken wenig zu tun und die Updates etwas "vernachlässigt". Aber selbst das alte IBExpert finde ich im Handling um Klassen besser als die Delphi Ultimate-Tools. :thumb:

Welche Konstellationen nutzt Ihr im Zusammenhang mit FireDAC und Firebird, die stabil funktionieren?

stahli 17. Mai 2013 11:55

AW: unsupported on-disk structure for file
 
*ZaghafterPush* :oops:
(da ich seit 2-3 Tagen nicht vom Fleck komme)

Morphie 17. Mai 2013 12:23

AW: unsupported on-disk structure for file
 
Also ich nutze Firebird 2.5.2, FireDAC (XE3), und als Admin-Tool nutze ich Firebird Maestro

Ich glaube aber eher, dass bei dir ein Chaos bei den Client-Libraries vorliegt... Kann das sein?
Wie sieht deine Komponentenstrukur aus?

Ich mache das bei mir immer so:
Ein Datenmodul mit:
- einem TADPhysIBDriverLink
- einer TADConnection
- einem TADGUIxWaitCursor

Den TADPhysIBDriverLink konfiguriere ich so:
DriverID: FB25_SERVER
Name: Firebird25DriverLink
VendorLib: Pfad zur fbclient.dll (die DLL vom Server nehmen!)

TADConnection richte ich so ein:
Rechtsklick auf die Komponente > Connection Editor
Da ich zuvor einen DriverLink mit dem Namen "FB25_SERVER" angelegt habe, wähle ich diesen unter "Driver ID" aus
Dann gebe ich Database, User_Name, Password, Protocol (TCP), Server und CharacterSet ein.
Danach klicke ich auf "Test" > Connection established successfully.

anschließend lässt sich wie gewohnt mit TADQueries usw. arbeiten...

Wie gesagt, ich glaube du verwendest einfach falsche Client-Libraries.
Ich würde den ganzen Mist mit addrivers.ini usw. weglassen... den brauchst du nicht. Geb die DLL lieber direkt im TADPhysIBDriverLink an. Das kannst du natürlich zur Laufzeit auch entsprechend ändern (du kannst somit die DLLs in ein Unterverzeichnis deiner *.exe packen)
C:\Programme\DeinProgramm\Bin\FBClient\fbclient.dl l

p80286 17. Mai 2013 12:33

AW: unsupported on-disk structure for file
 
Mein russisch ist nicht so übermäßig gut aber vielleicht kannst Du da etwas mit anfangen:
http://www.ibase.ru/devinfo/prevver.htm
http://www.sql.ru/forum/922028/podkluchenie-k-firebird

Wenn ich das richtig verstanden habe, herrscht auf Deinem Rechner wohl ein Interbase/FireBird Kuddelmuddel. Hast Du mal überprüft, wo die notwendigen DLLs sich befinden? Und welche genutzt werden?

Gruß
K-H

stahli 17. Mai 2013 12:48

AW: unsupported on-disk structure for file
 
Danke Euch schon mal. Bin erst heute Abend an meinem Rechner.
Im gesamten System sind dutzende gds32 und fbclient DLL´s.
Im System32 aber nur noch eine fbclient.

Keine Ahnung, welche Programme/Teile nun was brauchen, daher habe ich mich noch nicht an´s löschen getraut. Das System hat schon ein paar Jahre auf dem Buckel.

Ich werde FB mal neu installieren und dann mal sehen, ob ich eine "eigene" fbclient nutzen kann und die aktuelle "zentrale" aus System32 werfen.

Lemmy 17. Mai 2013 18:00

AW: unsupported on-disk structure for file
 
Hi,
kannst Du Firedac denn nicht sagen, welche client.dll er genau nutzen soll? In das exe Verzeichnis kopieren und vor dem Verbinden die DLL zuweisen...

GRüße

Morphie 17. Mai 2013 19:43

AW: unsupported on-disk structure for file
 
doch, geht... (siehe meinen Beitrag #6)


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:00 Uhr.
Seite 1 von 2  1 2      

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