Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » UltraLite - Datenbankverwaltung » Fehlerbehandlung in UltraLite

 

Datenbankbeschädigung

Symptom

Ihre Datenbank ist möglicherweise beschädigt, wenn folgende Probleme auftreten:

  • Sie generiert die folgenden Fehler:

    • SQLE_DEVICE_ERROR
    • SQLE_DATABASE_ERROR (kann auch ein Symptom für andere Probleme sein)
    • SQLE_MEMORY_ERROR (kann auch ein Symptom für andere Probleme sein)
  • Sie stürzt ab oder gibt ungültige Abfrageergebnisse zurück.

Erklärung

Es gibt zwei Hauptursachen für eine Beschädigung:

  • Die häufigste Ursache ist, dass das Gerät Schwierigkeiten hat, die Datei zu speichern, und dabei fälschlicherweise ihren Inhalt verändert. Dieses Problem bewirkt üblicherweise, dass die Datenbank sehr bald nicht mehr funktionsfähig ist.

  • Die zweite Ursache ist ein Fehler im UltraLite-Code, der verhindert, dass der Index korrekt aufrechterhalten wird. Diese Probleme können lange Zeit unbemerkt bleiben, weil die Änderung in den Ergebnissen einer Abfrage schwer zu erkennen sind.

Empfehlung

Prüfsummen werden verwendet, um Offline-Beschädigungen zu ermitteln, was die Wahrscheinlichkeit verringert, dass andere Daten aufgrund einer beschädigten kritischen Seite in Mitleidenschaft gezogen werden. Wenn eine Prüfsummenvalidierung beim Laden einer Seite fehlschlägt, stoppt UltraLite die Datenbank sofort und meldet einen schwerwiegenden Fehler. Dieser Fehler kann nicht korrigiert werden. Stattdessen müssen Sie folgende Maßnahmen treffen:

  1. Melden Sie den Fehler iAnywhere. Es ist hilfreich, wenn Sie die Abfolge der Ereignisse kennen, die die Beschädigung bewirkt haben, und wenn der Fehler reproduzierbar ist.

  2. Wenn Sie die Daten benötigen, entladen Sie den Inhalt der Datenbank in eine Datei.

  3. Erstellen Sie eine neue Datenbank.

  4. Fügen Sie die Daten wieder ein, indem Sie entweder eine Synchronisation ausführen oder die entladenen Daten laden.

Siehe auch