Wie verbinden und benutzen Firebird-db embedded server mit Visual C# 2010
Ich versuche zu verwenden, Firebird embedded server mit Microsoft Visual C# 2010.
so, hier ist was ich bis jetzt getan:
- Heruntergeladen Firebird .Net Data Provider (Firebird-Client v2.5.2).
- Heruntergeladen Firebird Embedded server (Firebird-Embedded-Server v2.5.0).
- Hinzugefügt Verweis auf FirebirdSql.Data.FirebirdClient.dll zu meinem Projekt.
- Extrahiert und Kopiert fbembed.dll Datei meiner Anwendung Verzeichnis.
- Hinzugefügt meine FDB-Datei "TESTEN.FDB - " auf meine Anwendung Verzeichnis.
- Hinzugefügt "using FirebirdSql.Daten.FirebirdClient;" - Anweisung.
So weit, So gut (nehme ich an)...
Wenn ich jetzt versuche zu eine Verbindung zu meinem FDB-Datei mit dem folgenden code:
FbConnection con = new FbConnection("User=SYSDBA;" + "Password=masterkey;" + "Database=TEST.FDB;" + "DataSource=127.0.0.1;" + "Port=3050;" + "Dialect=3;" + "Charset=UTF8;");
try {
con.Open();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
Bekomme ich immer die messagebox, was bedeutet, dass der code stellt keine Verbindung zu meinem DB-Datei korrekt.
mache ich etwas falsch? Ich bin echt noch noob mit C# und ich habe keine Ahnung, wie dies zu tun oder es zu beheben, und ich hoffe, jemand wird mir dabei helfen.
Dank 🙂
EDIT: hier ist das, was ich in die Ausnahme:
FirebirdSql.Daten.FirebirdClient.FbException
(0 x 80004005): Nicht abgeschlossen
network request to host "127.0.0.1".
---> Unable to complete network request to host "127.0.0.1". bei
FirebirdSql.Daten.FirebirdClient.FbConnectionInternal.Connect()
bei
FirebirdSql.Daten.FirebirdClient.FbConnectionPool.Create()
bei
FirebirdSql.Daten.FirebirdClient.FbConnectionPool.CheckOut()
bei
FirebirdSql.Daten.FirebirdClient.FbConnection.Öffnen Sie()
bei
fbTestApp.Form1.button1_Click(Object
sender, EventArgs e) in C:\Documents
und Einstellungen\ermac\eigene Dateien\Visual
Studio
2010\Projects\fbTestApp\fbTestApp\Form1.cs:Zeile
25
nope..firebird embedded server läuft nur wenn ich auf bestimmte Schaltfläche.
InformationsquelleAutor SolidSnake | 2010-10-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich schließlich fand ich die Lösung nach 6 Stunden Arbeit 🙂
meisten Antworten bei google sind entweder falsch oder so alt.
alle von Ihnen sagen, dass ich nur ab und zu gehören fbembed.dll Datei in mein Projekt..
nach einigen Untersuchungen, die ich gemacht habe. Ich fand, dass ich auch hinzufügen müssen firebird.msg, firebird.conf icudt30.dll, icuin30.dll, icuuc30.dll und ib_util.dll zu mein Projekt Dateien und die Ausgabe-Ordner..
wichtiger Hinweis: verwenden Sie niemals kompakt .Net data provider. weil Sie es für Normal und super firebird-Server nur. es funktioniert nicht mit eingebetteten Servern.
InformationsquelleAutor SolidSnake
Mit Firebird 2.5 eingebettet, ich kopiere alle diese Dateien in das Anwendungsverzeichnis ein :
In der Verbindungszeichenfolge, ich angeben, dass der server eingebettet ist, mit serverType=1:
Vergaß ich auch IDPLicense.txt und IPLicense.txt ich denke, wir müssen auch verteilen Sie mit der Anwendung für die Lizenz-Problem ?
InformationsquelleAutor PlageMan
Legte ich den Firebird-Dll in ein Verzeichnis, in das Projekt mit dem Namen Firebird. Hinzugefügt eine Post-Build-Ereignis, um die Dateien zu kopieren.
InformationsquelleAutor bill