Verbindung mit Firebird Datenbank

  • VB.NET

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von Nils.

    Verbindung mit Firebird Datenbank

    Edit by ErfinderDesRades: (Thema verschoben) Bitte richtiges UnterForum wählen!


    Hallo zusammen,

    ich verwende Visual Basic 2010 Express und möchte ein Programm mit einer Firebird DB erstellen.

    Da ich leider nichts gefunden habe, was mir wirklich weiterhilft, schildere ich hier mal mein Problem.

    Ich habe Firebird 2.0 installiert und mir mit IBExpert eine Datenbank erstellt.

    Ich glaube, dass mein Problem der ConnectionString ist.

    Zum
    "üben" habe ich ein ganz einfaches Programm machen wollen, welches die
    Verbindung einfach nur einmal öffnet und wieder schließt:

    VB.NET-Quellcode

    1. Imports System.Data.Common
    2. Imports System.Data.SqlClient
    3. Public Class Form1
    4. Dim con As DbConnection = New SqlConnection
    5. Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    6. con.ConnectionString = "Server=tcp:localhost,3050;Database=Database.fdb;User ID=SYSDBA;Password=masterkey"
    7. End Sub
    8. Private Sub cmdAnzeige_Click(sender As System.Object, e As System.EventArgs) Handles cmdAnzeige.Click
    9. con.Open()
    10. con.Close()
    11. End Sub
    12. End Class


    Wenn ich nun den Button betätige kommt folgende Fehlermeldung:

    Es konnte eine Verbindung mit dem Server hergestellt werden, doch während des
    Handshakes vor der Anmeldung trat ein Fehler auf. (provider: TCP Provider,
    error: 0 - Eine vorhandene Verbindung wurde vom Remotehost geschlossen.)

    Kann mir irgendjemand weiterhelfen?
    Muss
    ich noch irgendwelche komponenten installieren? Ich habe zwischendurch
    etwas von Treibern oder Providern gelesen, die installiert werden
    können.

    Nebenbei gefragt, muss ich im ConnectionString für die Datenbank den kompletten Pfad
    angeben oder reicht "Database.fdb" (so habe ich es in den Toturials
    gesehen)? Egal wie ichs mache, an der Fehlermeldung ändert sich nichts.

    Ich
    würde mich mega freuen, wenn sich jemand meldet und mir im Idealfall
    sogar helfen kann, ich habe nämlich den ganzen Tag rumprobiert und
    gesucht...

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „ErfinderDesRades“ ()

    Hallo ErfinderDesRades,

    ja diese Seite ist mir bekannt, habe sie auch schon öfters hier im Forum gesehen.
    Mein Problem ist nur, dass VB einige der Attribute nicht kennt, wenn ich den Connection String von Firebird übernehme.

    Deswegen war meine Frage, ob man Driver oder ähnliches installieren muss, damit VB diese Attribute im "Wortschatz" aufnimmt.
    ach so, ja, vermutlich.
    Jeder DBProvider (Access, Ole, SqlServer, SqLite, MySql) vertickt seine Dll, wo ein bestimmter Satz an Klassen enthalten ist, die man zur Db-Programmierung braucht: Connection-Objekt, DataAdapter, Command etc pp.
    Für zB SqlServer und OleDb sind die Sachen im Framework gleich mit drin, die Dlls von Konkurrenz-Produkten wie Firebird und MySql müssen erst noch installiert werden.
    Also für OleDb erzeugt man zB

    VB.NET-Quellcode

    1. Dim connection As new OleDb.OleDbConnection(<ConnectionString>)
    für Firebird wirds analog sein, aber halt erst möglich, nachdem der Firebird-Kram installiert ist, und ein Verweis auf die Firebird-Dll gesetzt ist.
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D