Probleme mit TDbf

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:

Fehler nur bei alten dbase Datenbestand

Beitrag von ralli »

Also, dieser Fehler läßt sich nur reproduzieren, wenn ich eine alte dbase Datenbank benutze, wobei ich nicht mehr weiß, ob sie mit dbase IV, dbase für Windows oder aus einer Mysql Datenbank konvertiert wurde. Erstelle ich eine neue dbase Datenbank mit dbmaker für Windows oder mit dbmaker für Linux und fülle sie mit Daten, gibt es keine Probleme. Die Daten werden vernünftig eingefügt und auf Wunsch auch indiziert (sortiert). Der Zeichensatz spielt wohl keine Rolle, habe Daten unter Linux mit deutschen Umlauten hinzugefügt, werden unter Windows richtig angezeigt und umgekehrt Windows-Linux. Allerdings habe ich beim Einfügen die Append Methode benutzt.

Ich vermute stark, das dieses Problem der alten Datenbestände im Dateiheader der dbf Datei steckt. Und da kann ich mich erinnern, das ich eine mit TDBF Kompo erstellte Datenbank (Level 4) mit dbase für Windows nicht mehr lesen konnte.

Dann werde ich mal eine neue Datenbank mit der TDBF Kompo erstellen und meinen Datenbestand aus einer alten dbase Datei übernehmen. Mal sehen, was passiert !

Ralli

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

Ich hatte die probleme mit neu erstellten Dateien
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

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:

Bei mir läufts rund

Beitrag von ralli »

Habe gerade noch einmal die Append Methode durch Insert ersetzt, läuft einwandfrei ! Seltsam, seltsam.

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:

Es liegt an dem alten Datenbestand

Beitrag von ralli »

Meine Vermutung hat sich bestätigt,

habe gerade ein kleines Konvertierungstool erstellt und mit dessen Hilfe eine Original alte dbase IV Datei über die Borland BDE und die Datensätze in eine mit der TDBF Kompo erstellten identischen Struktur übernommen. Unter Windows und unter Linux lassen sich die Daten auch umlautspezifisch richtig anzeigen, hinzufügen und indizieren. Alles ohne Probleme. Also scheint der Dateiheader der alten dbf und der neuen dbf unterschiedlich zu sein, was man ja mit einem Hexeditor überprüfen könnte. Ich habe diese konvertierte Datenbank mit 4304 Datensätzen meinem Projekt dbmaker für Linux hinzugefügt, damit man Daten zum Probieren hat. Der Download ist unter http://www.rgsoftware.de verfügbar.

Ralli

Antworten