Autor Beitrag
King555
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 27.01.06 11:24 
Ich erhalte bei so ziemlich jeder Query in meinem Programm auf einem bestimmten Rechner (Windows 2000) die angehängte Fehlermeldung. Was kann das sein? Hat jemand eine Idee?

Datenbanksystem ist Firebird 1.5, Zugriff mittels "IBObjects" (Delphi Komponenten).
Einloggen, um Attachments anzusehen!
mkinzler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 4106
Erhaltene Danke: 13


Delphi 2010 Pro; Delphi.Prism 2011 pro
BeitragVerfasst: Fr 27.01.06 11:35 
Wie sieht der connection-string aus?
Wo liegen die Daten?
Was steht in der Configdatei?

_________________
Markus Kinzler.
King555
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 27.01.06 11:57 
Mit "Connection-String" kann ich ehrlich gesagt nichts anfangen. Was ist das?

Mit der Config-Datei meinst du sicher die Firebird-Configdatei, oder? Da ist alles auf Standard. Alles zum Thema Temppfade ist auskommentiert (Standard eben).

Hier noch genauere Infos:

Es gibt zwei Rechner, auf beiden wird auf die DB über das Programm zugegriffen. Der eine fungiert als Server (dort läuft Firebird und dort liegt auch das Programm), der andere als Client. Der Client benutzt Windows 2000, der Server Windows XP. Der Ordner mit dem Programm und der Datenbank ist freigegeben.

Die Datenbankkomponente hat folgende Einstellungen:
Protokoll = Lokal
Server = server
Pfad = \\server\programmpfad\dbpfad\db.gdb
OlliWausD
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 212

Win 2000/XP
Delphi 5 Professional - Interbase/Firebird
BeitragVerfasst: Fr 27.01.06 11:59 
user profile iconKing555 hat folgendes geschrieben:
Mit "Connection-String" kann ich ehrlich gesagt nichts anfangen. Was ist das?

Mit der Config-Datei meinst du sicher die Firebird-Configdatei, oder? Da ist alles auf Standard. Alles zum Thema Temppfade ist auskommentiert (Standard eben).

Hier noch genauere Infos:

Es gibt zwei Rechner, auf beiden wird auf die DB über das Programm zugegriffen. Der eine fungiert als Server (dort läuft Firebird und dort liegt auch das Programm), der andere als Client. Der Client benutzt Windows 2000, der Server Windows XP. Der Ordner mit dem Programm und der Datenbank ist freigegeben.

Die Datenbankkomponente hat folgende Einstellungen:
Protokoll = Lokal
Server = server
Pfad = \\server\programmpfad\dbpfad\db.gdb


ok: ich hab mir das progrämmchen jetzt nicht angeschaut, aber die Pfadangabe hier is schon falsch:

für Firebird lautet die Syntax nicht \\server\programmpfad\dbpfad\db.gdb sondern:
Servername:Laufwerk:\programmpfad\db.gdb

mfg

OlliW

_________________
Take it easy
MAlsleben
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 303

W2k,WinXP
D3 - DXE3 Enterprise
BeitragVerfasst: Fr 27.01.06 12:00 
Hi,

beim Abfragen mit Sort legt der Firebird - Client auf dem Client-Rechner temporäre Dateien zum Sortieren im gültigen Temp Verzeichnis ab. Es könnte jetzt ein Berechtigungproblrm am Client -Rechner sein ( der angemeldete User hat in dieses Verzeichnis keine Schreib und Löschrechte) oder die Platte ist voll. Die temp. Sortierdateien auf dem Client können je nach Datenmenge der Abfrage und was wie sortiert werden soll schon recht heftig werden.

Gruß Micha.

_________________
Viele Wege führen nach Rom.
mkinzler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 4106
Erhaltene Danke: 13


Delphi 2010 Pro; Delphi.Prism 2011 pro
BeitragVerfasst: Fr 27.01.06 12:22 
user profile iconKing555 hat folgendes geschrieben:

Die Datenbankkomponente hat folgende Einstellungen:
Protokoll = Lokal
Server = server
Pfad = \\server\programmpfad\dbpfad\db.gdb

So kann es nur vom Server aus funktionieren, da Protokoll auf lokal gestellt ist.

Muß wie folgt abgeändert weden:

Protokoll = tcpip
Server = server
Pfad = <Laufwerk:\programmpfad\dbpfad\>db.gdb

Achtung der Pfad muß auch Sicht des Servers angegeben werden.
Noch ein Tipp ändere die Endung der Datenbank auf .fb .fdb oder .ib, da .gdb von WindowsXP als Debugdatei vewendet wird, un daher der Zugriff ausgebremst wird.

_________________
Markus Kinzler.
King555
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 27.01.06 12:43 
So wie die Datenbankkomponente jetzt eingestellt ist, funktioniert es komischerweise auf beiden Rechnern einwandfrei (es kommt nur halt dieser Temp-Fehler auf dem Client).

Als ich folgende Settings gemacht hatte, ging es nur noch auf dem Server, nicht mehr auf dem Client:

Protokoll = TCP/IP
Server = server
Pfad = C:\programmpfad\dbpfad\db.gdb

Pfad war also auf den lokalen Pfad der DB aus der Sicht des Servers eingestellt. So halte ich es auch für richtig, aber dann kann der Client da nicht mehr drauf zugreifen ("failed to establish a connection to server"). Ping auf den Server funktioniert einwandfrei. Statt dem Hostnamen die IP geht auch nicht. Ich kann ja mal "servername:pfad" versuchen, allerdings glaube ich, dass das die Komponente selbst macht, da ich den Server selbst ja auch eintrage.

Auf der Client-Festplatte sind noch 16 GB frei, also genug denke ich. Ich habe die Rechte für den Temp-Ordner für jeden User der schon in der Userliste drinstand und für den angemeldeten User auf Vollzugriff geändert, ds brachte aber nichts.

Die Dateiendung werde ich auch mal auf *.fdb ändern.
King555
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 01.02.06 11:13 
Habe den Fehler gefunden.

Die Connection-Settings waren ja falsch, nur funktionierten die richtigen nicht. Der Grund war, dass der Server eine Firewall hatte. Nachdem ich den Firebird Port auf dem Server freigegeben hatte, konnte ich über die richtigen Connection-Settings auf die DB zugreifen und der Temp-Fehler war weg.

Danke für eure Hilfe!