Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi I/O error for file bei Firebird (https://www.delphipraxis.net/59197-i-o-error-file-bei-firebird.html)

Ati 19. Dez 2005 10:37

Datenbank: Firebird • Version: 1.5 • Zugriff über: Zeos

I/O error for file bei Firebird
 
Hallo zusammen,

wir haben für unser erstes Projekt den Firebird-Server nun bei uns auf unserem Server installiert. Kurz was zum Hintergrund weil ich irgendwie hier den Fehler vermute. Unser Server (Win200) hat zwei Partitionen. Einmal C ganz normal und dann noch D: wo unsere freigegebenen Ordner für das Firmennetzwerk sind. Wir haben Firebird auf D: installiert. Als ich mal ganz locker eine Datenbank angelegt habe ist mir aufgefallen das er dies und C:\Windows\system gemacht hat.... also wieder gelöscht und auf Laufwerk D: in einem freigegebenen Ordner neu angelegt. Mit IBExpert kann ich mich auch ganz normal mit dieser Datenbank verbinden. Wenn ich jetzt aber in meinem Delphi-Programm die Eigenschaft "Connected" auf True setzte kommt die Meldung "I/O error for file "D:\etc\Reklamationen.fdb"??
Kann ja nur mal wieder ein Flüchtigkeitsfehler von uns sein!!

Ati

marabu 19. Dez 2005 10:42

Re: I/O error for file bei Firebird
 
Hallo Ati,

kann schon sein, dass du die Datenbank im file system auf dem gemappten drive D: liegen siehst, der FireBird Server aber sieht sie nicht so. Du musst den lokalen Pfad auf dem Server angeben, damit es funktioniert.

Beispiel:

Delphi-Quellcode:
DatabaseName := ServerName + ':' + LocalDatabaseFileName;
Grüße vom marabu

Hansa 19. Dez 2005 10:48

Re: I/O error for file bei Firebird
 
Genau die Einstellungen in IBExpert (was geht) müssen im TDatabase drinstehen. Mit Suchpfaden usw. hat das Ganze nichts zu tun. 8)

Ati 19. Dez 2005 10:54

Re: I/O error for file bei Firebird
 
Liste der Anhänge anzeigen (Anzahl: 2)
Vielleicht mal ne kurze Erklärung wie ich das machen kann. Habe mir die Conf-Datei schon angeguckt jedoch keinen entsprechenden Eintrag gefunden.
Ich verstehe ja WAS ihr meint nur weiß ich jetzt nicht wie ich das ändern kann.
Mal zwei kleine Bildchen im Anhang!!

Elvis 19. Dez 2005 10:54

Re: I/O error for file bei Firebird
 
Zitat:

Zitat von marabu
Delphi-Quellcode:
DatabaseName := ServerName + ':' + LocalDatabaseFileName;

Moin marabu, generell halte ich es für keine so gute Idee, dem client pfad/name der Datenbank datei zuzumuten. Das geht den a) nix an und b) ist das eine ziemlich hakelige Geschichte wenn es um Änderungen in Datei/Ordner struktur kommt.
Im Verzeichnis des Firebird servers findet man die aliases.config, dort einfach das eintragen:
Code:
MyDatabase = Pfad\Datei.fdb
Nun kann man sich auch in FB wie bei anderen DBs über einen Datenbank namen statt so einen unschönen Dateinamen[1] anmelden:
Code:
DeinServer:MyDatabase
[1]welcher zusätzlich aus sicht des Servers, nicht des Client angegeben werden muss! :wall:



Zitat:

Zitat von Hansa
Genau die Einstellungen in IBExpert (was geht) müssen im TDatabase drinstehen. Mit Suchpfaden usw. hat das Ganze nichts zu tun. 8)

Und die Erde ist ein Scheibe, ist klar...

Ati 19. Dez 2005 11:04

Re: I/O error for file bei Firebird
 
Problem gelöst.... so peinlich das auch ist es war ein Schreibfehler!!! :wall: :wall: :wall:

marabu 19. Dez 2005 11:08

Re: I/O error for file bei Firebird
 
Hallo Elvis,

Zitat:

Zitat von Elvis
generell halte ich es für keine so gute Idee, dem client pfad/name der Datenbank datei zuzumuten. Das geht den a) nix an und b) ist das eine ziemlich hakelige Geschichte wenn es um Änderungen in Datei/Ordner struktur kommt.

ganz meine Meinung. Ich arbeite nicht mit FireBird, sondern mit Interbase. Da ich das von dir beschriebene feature dort nicht kenne, habe ich eine vergleichbare Steuerdatei auf dem Server liegen, aus der meine Clients sich ihre Konfigurationsdaten besorgen. Kann es sein, dass ich mir da zuviel Arbeit gemacht habe?

Freundliche Grüße vom marabu

Lemmy 19. Dez 2005 12:04

Re: I/O error for file bei Firebird
 
Hi,

das Feature ist erst bei FB 1.5 dazugekommen, ob es IB unterstützt, musst Du mal in der Hilfe suchen....

Lemmy

Elvis 19. Dez 2005 14:02

Re: I/O error for file bei Firebird
 
Zitat:

Zitat von marabu
ganz meine Meinung. Ich arbeite nicht mit FireBird, sondern mit Interbase.

Ich auch nicht. Werde es aber vllt falls der Release von 2.0 schnell genug kommt, so dass er sich noch möglichst schmerzfrei als brief case mini DB einbauen lässt, wenn nicht bleibe ich bei XML oder Nexus. Es ist aber immer gut zu wissen womit man es so zu tun hat. ;)
Zitat:

Kann es sein, dass ich mir da zuviel Arbeit gemacht habe?
Ich würde empfehlen mal einen Testport auf FB 1.5 zu machen und dann euer bestehendes System mit allen Test cases dagegen zu validieren. FB 1.5 dürfte verglichen zu IB einiges an Arbeit und Nerven sparen.
Auch eine mögliche Zukunftvision in Hinsicht auf .Net ist bei FB wesentlich netter da man da einen richtigen DataProvider mit allen Features der DB bekommt anstatt so einen stumpfen BDP PlugIn. ;)


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