Fehler beim Compilieren - Fehler vom externen Datenbanktreiber



  • Hallo Zusammen,
    ich bin dabei ein kleines Programm zu erstellen. Ich möchte damit auf verschiedne Datenbanken im DBase Format zugreifen.
    Über BDE hat es auch geklappt. Ich möchte es jetzt aber über ODBC machen, da es mit BDE einige Probleme gegeben hat.
    Auf die Datenbanken möchte ich per ADO-Connection zugreifen. In ODBC habe ich das auch schon eingerichtet. Ich kann auch Connecten und per ADOQuery auf die einzelnen DBase Dateien zugreifen.

    Wenn ich das Programm jetzt starten möchte kommt aber folgende Meldung:

    Im Projekt name.exe ist eine Exception der Klasse EOleException aufgetreten. Meldung:'[Microsoft][ODBC dBASE Driver] Unerwartetet Fehler vom externen Datenbanktreiber (15877)'. Prozeß wurde angehalten. Mit Einzelne Anweisung oder Start fortsetzen.

    Kann mir da jemand weiterhelfen?? Wodran kann das liegen.
    Danke im voraus
    BeTZe



  • Dir ist aber schon klar, dass ein Zugriff über ODBC einfach nur eine weitere Schicht darstellt? Die BDE wird weitherhin verwendet. Wenn es also mit der BDE Probleme gibt, kannst Du das nicht dadurch umgehen, dass Du eine ODBC-Verbindung verwendest. Der externe Datenbanktreiber ist nämlich die BDE...

    Was für Probleme mit der BDE hast Du denn?



  • Hallo Joe_M,

    danke für den Hinweis. Da habe ich ja nicht sehr weit gedacht. D.h. ich muß in der BDE die Datenbank auch wieder anlegen??

    Meine Probleme mit BDE lagen eigentlich nur daran das ein anderes Programme in der Konfiguration für DBase was ändert und mein Prgramm dann nicht mehr richtig funktioniert hat.

    Wo liegt denn der genaue Unterschied zwischen ADO-Connection und der normalen BDE Connection??

    BeTZe



  • Kurz gesagt:

    ADO = MS
    BDE = Borland

    Die BDE ist verwaltet ADO ist aktuell.

    Grundsätzlich benötigst Du einen Treiber um mit ADO auf eine Datenbank zugreifen zu können. z.B. OLDE-DB oder ODBC. Dieser wird im Regelfall vom Datenbankhersteller angeboten.
    Bei Paradox und dBase ist der Treiber die BDE.

    Es ist richtig, dass Du ADO verwendest, da die BDE mit dem BCB 6 zum letzten Mal ausgeliefert wurde. Und auch hier schon nur noch aus Kompabilitätsgründen.

    Leider funktionieren dBase und Paradox ohne die BDE nicht. Aber sie sind ebenfalls 'End of Life'.

    Was Du noch brauchst ist eine aktuelle Datenbank, z.B. MySQL, Firebird oder ADS, um nur ein paar zu nennen. Diese sind kostenlos und benötigen auch nicht mehr Aufwand zur Installation, als die BDE.


  • Mod

    Hallo

    @Joe_M.

    Leider funktionieren dBase und Paradox ohne die BDE nicht

    Das stimmt so nicht. Ich greife direkt (ohne BDE) auf dBase-Dateien zu,
    und dies funktioniert.
    (Auf dem Rechner ist eine BDE installiert -> sonst wuerde ja die BDE trotzdem verwendet - hatte ich auch schonmal ein Problem damit - Geschwindigkeit)

    MfG
    Klauis



  • Sobald auf dem Rechner die BDE installiert ist, werden alle Zugriffe auf dBase und Pdox Tabellen über die BDE abgewickelt (so weit ich weiß...).
    Es gibt Treiber von Drittanbietern die einen Zugriff ohne BDE ermöglichen. Dies ändert allerdings nichts an den Problemen mit aktuellen Betriebssystemen und Dateisystemem (HDD > 4 GB, OppLock, usw). Bei dBase bin ich mir nicht sicher, bei Paradox trifft das auf jeden Fall zu.



  • Hallo Ihr beiden,

    d.h. ich muß auf alle Fälle die Datenbanken in BDE eintragen??

    BeTZe



  • Solange Du keinen Treiber eines Drittanbieters vewendest: ja.



  • Moin,

    Ok dann weiß ich bescheid. Dann werde ich es wieder darüber machen.

    Schöne Grüße und danke
    BeTZe


Anmelden zum Antworten