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

 

Datenbankgröße nicht stabil

Symptom

Ihre Anwendung sammelt eine Menge von BLOBs von mehreren Clientgeräten, synchronisiert diese Informationen mit einer konsolidierten Datenbank. Anschließend werden die synchronisierten Daten von allen Clientgeräten gelöscht. Die Datenbankgröße bleibt jedoch umfangreich, obwohl die Daten aus der Datenbank entfernt werden. Dies ist ein Problem, weil die Dateigröße auf Grund der beschränkten Ressourcen auf dem Gerät umsichtig verwaltet werden muss.

Erklärung

Die Datenbank sollte nur größer werden, wenn Ihre Daten in der Datenbank zunehmen. Wenn eine Datenbankdatei einmal größer geworden ist, bleibt diese Größe erhalten und wird nicht automatisch vermindert. Freier Speicherplatz wird intern in der Datei verwaltet.

Empfehlung

Achten Sie darauf, bei Tabellen, die nicht synchronisiert werden, die Anweisungen STOP SYNCHRONIZATION DELETE oder TRUNCATE nicht zu verwenden. Verwenden Sie stattdessen die DELETE-Anweisung mit einer FROM Tabellenname-Klausel für diese Tabellen.

Erstellen Sie die Datenbank nach der Synchronisation erneut:

  1. Erstellen Sie Ihre UltraLite-Datenbank, für die ein Deployment auf die Geräte vorgenommen wird.

  2. Erstellen Sie ein SQL-Skript von DDL-Anweisungen, die das Schema festlegen, das von den Clientgeräten benötigt wird. Weitere Hinweise finden Sie unter Deployment von UltraLite-Schema-Upgrades.

  3. Synchronisieren Sie die Daten.

  4. Löschen Sie die Datenbank.

  5. Erstellen Sie eine neue, leere Datenbank und verwenden Sie das Standard-Datenbankschema mit der Anweisung ALTER DATABASE SCHEMA FROM FILE.

Siehe auch