BTrieve Datenbank#
Diese Seite ist zur Zeit mehr ein Merkzettel als eine echte Hilfe für fremde. Wer Fragen zum BTrieve-Zugang unter Linux hat, kann auch gerne ThomasBayen persönlich ansprechen.
BTrieve ist ein Datenbanksystem, das eine Weile von Novell vertrieben wurde und deshalb auf einigen Novell Netware-Servern zu finden ist. Leider ist keine vernünftige Doku im Internet zu finden, weshalb ich hier notieren möchte, was ich so weiss:
Export der Daten#
Mitgeliefert wird ein Kommandozeilentool butil. Mit diesem können Datenbanken in Datensatz-Zeilen (nicht ganz ASCII-Textformat) gewandelt werden:
brequest butil -save filename.dat filename.asc
Tools#
Einige Tools zum Thema findet man auf http://www.nomad.ee/btrieve/files/ Leider laufen die meisten Programme bei mir nicht oder nicht sauber. Ich fürchte, die verwendeten Komponenten sind aus einem Zeitraum von 15 Jahren und für die unterschiedlichsten BTrieve-Datenbank- und Client- und DOS/Windows-Versionen geschrieben. :-(
Unter http://www.nssdd.com/btsearch.html findet sich das Tool "BTSearch", das wohl sogar noch aktuell gepflegt wird.
Definition und Datenformate#
Die Definition des Formats der Datenbanken findet sich in den Dateien FILE.DDF (Liste der Datenfiles/Tabellen) und FIELD.DDF (Liste der Datenfelder). Das Format dieser Dateien war mir etwas schleierhaft, bis ich herausfand, das man auch diese mit obigem Befehl ausgeben konnte.
Lesen / Schreiben#
Daraufhin habe ich (ThomasBayen) ein kleines Perl-Tool geschrieben, das aus den mit BUTIL erzeugten Dateien Zugriff auf die BTrieve-Daten erlaubt. Dieses Programm enthält auch einige Informationen zu den Datenformaten. Inzwischen gibt es auch eine Java-Version dieses Tools. Wer daran interessiert ist, kann mich gerne anschreiben.
Ein Schreiben in die BTrieve-Datenbank habe ich bisher noch nicht gemacht, dürfte auf dem Umweg über BUTIL (-save und -load) aber auch nicht ganz unmöglich sein.
Auf der Seite http://www.nomad.ee/btrieve/bugs/bugs.html ist eine Liste von BTrieve-Fehlermeldubngen und was man damit anfängt. Hier habe ich herausgefunden, daß mein "Status 91"-Fehler ungefähr bedeutet, daß zu viele Verbindungen zur Datenbank bestehen.