Announcement

Collapse
No announcement yet.

Fehler in Blob Feld

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Fehler in Blob Feld

    Hallo,

    in einem älteren Programm von mir arbeite ich mit D4 und Paradox/BDE.
    Das Programm greift direkt auf die Tabellen zu. Im Programm gibt es wenig Sicherung vor Fehlbedienung usw. Irgendwie ist nun auch ein Fehler passiert.

    D.h. bei einem bestimmten DS hängt sich die Anwendung auf, allerdings nur wenn der Inhalt eines Blob-Feldes (in dem normale Memos gespeichert werden) angezeigt wird. Im DB-Explorer der IDE gibt es das gleiche Verhalten. Schalte ich dort "Blob-Felder anzeigen" ab, so kann ich den vermeintlich fehlerhaften DS löschen. Allerdings tritt dann der Fehler beim nachfolgenden DS wieder auf, obwohl ich auf diesen vorher zugreifen konnte.
    Fehlermeldung: Blob-Feld geändert

    a) wie bekomme ich wieder Ordung in die Tabelle
    b) wie kann so ein Fehler auftreten
    c) wie muß ich die Anwednung ändern, um vor derartigen Fehlern sicher zu sein
    d) Kann die Anwendung den Fehler selber wieder reparieren?

  • #2
    Hallo,

    zur Frage 1: <br>
    Das Zurückspielen des letzten Backups sollte das Problem beseitigen. Vorher kann man versuchen, ob <b>TUtility</b> (TUTIL32.DLL) die beschädigte Tabelle reparieren kann (was ich in diesem Fall jedoch nicht glaube).

    zur Frage 2: <br>
    Es gibt zu viele potentielle Fehlerquellen (RAM, Festplatte, Programmabsturz, kurzzeitige Spannungsschwankung im Netzteil des Rechners, Bug in der BDE...), um hier etwas sagen zu können.

    zur Frage 3: <br>
    Man kann zur Sicherheit nach jedem Post die IDAPI-Funktion <b>DbiSaveChanges</b> (Unit <i>BDE</i>) aufrufen, damit die BDE ihren Schreibcache sofort auf die Festplatte schreibt. Das bremst zwar etwas, aber das Zeitfenster für potentielle Beschädigungen der Daten wird kleiner.

    zur Frage 4: <br>
    Wenn der Einsatz von <i>TUTIL32.DLL</i> (siehe Borland-Demoprogramm <i>Dtutil32.dpr</i> von der Borland-Webseite) die Tabelle nicht reparieren kann, hilft nur das Zurückspielen des letzten Backups. Ich würde <b>immer</b> zum Backup greifen, um ganz sicher zu gehen

    Comment


    • #3
      Hallo Andreas,

      danke für den Tip. Mit Tutil32 hat´s geklappt. Vielen Dank. Ich baue jetzt ein paar Sicherungen und auch Backups ein

      Comment

      Working...
      X