Keine Verbindung zu Firebird

Für Themen zu Datenbanken und Zugriff auf diese. Auch für Datenbankkomponenten.
ralli
Beiträge: 374
Registriert: Mi 13. Sep 2006, 15:57
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Hagen a.T.W.
Kontaktdaten:

Keine Verbindung zu Firebird

Beitrag von ralli »

Hallo,

ich benutze Lazarus 0.9.16 unter Xandros Desktop 3.1 (Debian 3.1). Habe Firebird 1.5.3 installiert und der Server läuft auf der Konsole oder mit IBAcess einwandfrei.

Beim Versuch mit der SQLdb Kompo TIBConnection eine Verbindung herzustellen, kommt folgender Dialog als Fehlermeldung:

DoInternalConnect:

- Unable to complete network request to host "localhost".

- Failed to establish a connection.

- Connection refused.

Was hat das zu bedeuten. Sind die SQLdb Kompos noch buggy ? Leider ist mein Englisch nicht ausreichend.

Ralli

knight
Beiträge: 802
Registriert: Mi 13. Sep 2006, 22:30

Beitrag von knight »

Es wäre hilfreich, wenn du noch angeben könntest, mit welchen Einstellungen du arbeitest und wie du versucht hast, die Verbindung zum Server herzustellen. Bei mir funktionieren die Komponenten, so daß ich momentan eher auf einen Fehler in deinem Code tippen würde.

knight

ralli
Beiträge: 374
Registriert: Mi 13. Sep 2006, 15:57
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Hagen a.T.W.
Kontaktdaten:

Beitrag von ralli »

Hier ist der Code:

procedure TForm1.Button4Click(Sender: TObject);
begin

IBConnection1.DatabaseName := 'info.fdb';

IBConnection1.Dialect := 3;

IBConnection1.HostName := 'localhost';

IBConnection1.UserName := 'sysdba';

IBConnection1.Password := 'xxxxxx';

SQLTransaction1.Database := IBConnection1;

SQLQuery1.Database := IBConnection1;

IBConnection1.Connected := True;

SQLQuery1.SQL.Add('select * from hasbergen');

SQLQuery1.ExecSQL;

end;

Die Datenbank info.fdb ist als alias registriert, so das ich keinen Pfad mitangeben muß.

Ralli

knight
Beiträge: 802
Registriert: Mi 13. Sep 2006, 22:30

Beitrag von knight »

Ich bin mir nicht sicher, ob ein alias wirklich unterstützt wird. Ich würde daher vorschlagen, bei IBConnection1.DatabaseName sicherheitshalber den kompletten Pfad einzugeben. Wenn der Datenbankserver lokal installiert ist, kann man nach meiner Erfahrung das 'localhost' bei IBConnection1.HostName weglassen. Möglicherweise taucht das Problem dann nicht mehr auf.

knight

ralli
Beiträge: 374
Registriert: Mi 13. Sep 2006, 15:57
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Hagen a.T.W.
Kontaktdaten:

Es funzt net

Beitrag von ralli »

Also, ich hab mal den ganzen Pfad angegeben, aber es funzt immer noch nicht. Ich habe schreib und Leserechte, das ist es auch nicht. Außerdem kann ich mit IBAcess (das ist eine Gui für Interbase/Firebird) problemlos auf den Server und meine DB zugreifen. Es gibt im Ordner ETC ja verschiedene Dateien. In der Datei hosts ist localhost eingetragen. Muß das noch irgendwo anders eingetragen werden ? Langsam verzweifel ich.

Ralli

knight
Beiträge: 802
Registriert: Mi 13. Sep 2006, 22:30

Beitrag von knight »

An deinem Beispielcode sind mir noch zwei Dinge aufgefallen:
- Wird SQLQuery1 eine Transaktion zugewiesen (ggf. mit SQLQuery1.Transaction:=... nachholen)?
- Werden die Transaktion und die Query aktiviert (Active Eigenschaft)?

Sonst kann ich nur empfehlen, dein Problem im offiziellen Lazarus Forum oder der Mailing Liste zu schildern. Dort gibt es auch Datenbankspezialisten.

knight

ralli
Beiträge: 374
Registriert: Mi 13. Sep 2006, 15:57
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Hagen a.T.W.
Kontaktdaten:

Unter Windows läuft es

Beitrag von ralli »

Guten Morgen,

es bleibt noch nachzutragen, das das selbe Programm, der absolut gleiche Code mit Lazarus für Windows compiliert einwandfrei läuft. Unter Linux eben nicht.

Ralli

knight
Beiträge: 802
Registriert: Mi 13. Sep 2006, 22:30

Beitrag von knight »

Dann würde ich das als Bug melden ( http://www.freepascal.org/mantis/main_page.php ). Falls es IBAccess auch für Linux gibt - hat dort der Zugriff auf die Datenbank funktioniert? Möglicherweise ist auch bei dir unter Linux die Bibliothek für den Zugriff auf die Datenbank nicht richtig eingerichtet bzw. befindet sich an einer Stelle, wo sie vom Programm nicht gefunden wird.

knight

ralli
Beiträge: 374
Registriert: Mi 13. Sep 2006, 15:57
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Hagen a.T.W.
Kontaktdaten:

IBAcess funktioniert einwandfrei

Beitrag von ralli »

Ja, ich habe IBAcess für Linux installiert und ausprobiert, es funktioniert einwandfrei. Und das ist doch ein Indiz dafür, das das Netzwerk, localhost usw richtig eingerichtet sind !

Dann sollte ich den Bug wohl mal melden

Ralli

knight
Beiträge: 802
Registriert: Mi 13. Sep 2006, 22:30

Beitrag von knight »

Falls du die Möglichkeit hast, die neue Lazarus Version 0.9.18 zu installieren, probiere doch mal aus, ob dort der Fehler immer noch auftritt.

knight

ralli
Beiträge: 374
Registriert: Mi 13. Sep 2006, 15:57
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Hagen a.T.W.
Kontaktdaten:

Test läuft

Beitrag von ralli »

Danke knight,

habe gerade die neue Version gezogen und teste es gleich

Ralli

ralli
Beiträge: 374
Registriert: Mi 13. Sep 2006, 15:57
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Hagen a.T.W.
Kontaktdaten:

Mit der neuen Version gehts auch nicht

Beitrag von ralli »

Auch mit der neuen Version 0.9.18 funktioniert es nicht.

Ralli

ralli
Beiträge: 374
Registriert: Mi 13. Sep 2006, 15:57
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Hagen a.T.W.
Kontaktdaten:

Windows

Beitrag von ralli »

Unter Windows funktioniert die Firebird Connection einwandfrei.

Ralli

stj
Beiträge: 19
Registriert: So 15. Okt 2006, 14:52
OS, Lazarus, FPC: Lazarus 2.2.0, FPC 3.2.2
Wohnort: Meckenburg-Vorpommern

Re: Mit der neuen Version gehts auch nicht

Beitrag von stj »

ralli hat geschrieben:Auch mit der neuen Version 0.9.18 funktioniert es nicht.

Ralli


Hallo Ralli.

Bin zwar ganz frisch hier, aber ich hab keine (wesentlichen) Probleme auf eine FB-Datenbank zuzugreifen.
Als "Database" muss der vollständige Connection-String eingetragen werden, "Hostname" wird ignoriert (zumindest bei sqldb). Also:
host[/Port]:datenbank (ggfs. auch ein Alias, der wird vom Server ausgewertet)

Stephan

ralli
Beiträge: 374
Registriert: Mi 13. Sep 2006, 15:57
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Hagen a.T.W.
Kontaktdaten:

Hat jemand Open Suse 10.1 und Lazarus mit firebird am Laufen

Beitrag von ralli »

Nein, bei mir funzt es nicht, alles probiert, Eure Hilfe eingeschlossen. Ich glaube, es liegt am Xandros Linux. Wer Open Suse 10.1 mit Lazarus ans Laufen bekommen hat, vielleicht auch noch mit Firebird, bitte melden und posten, dann wäre ich zu einem Wechsel bereit.

Ralli

Antworten