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 » UltraLite-Datenbankreferenz » UltraLite-Verbindungsparameter

 

UltraLite COMMIT_FLUSH-Verbindungsparameter

Legt fest, wann festgeschriebene Transaktionen nach einem Festschreibeaufruf bereinigt, d.h. in den Speicher geschrieben werden. Wenn die UltraLite-Anwendung keine Festschreibeaufrufe durchführt, kann keine Bereinigung durchgeführt werden.

Syntax
COMMIT_FLUSH={ immediate | grouped | on_checkpoint }
Standardwert

immediate

Bemerkungen

Dieser Verbindungsparameter legt fest, welche Transaktionen nach einem Hardwarefehler oder Crash wiederhergestellt werden. Sie können logische Autocommit-Vorgänge in einen einzelnen Wiederherstellungspunkt zusammenfassen.

Durch die Gruppierung dieser Vorgänge können Sie die UltraLite-Performance verbessern. Dies geht jedoch auf Kosten der Wiederherstellbarkeit der Daten. Es besteht eine geringe Wahrscheinlichkeit, dass eine Transaktion verloren geht, selbst wenn sie festgeschrieben wurde, wenn nach einem Festschreibevorgang und bevor die Transaktion in den Speicher geschrieben wird, ein Hardwarefehler oder Systemabsturz auftritt.

Die folgenden Parameter werden unterstützt:

  • immediate   Festgeschriebene Transaktionen werden sofort nach einem commit-Aufruf und vor dem Abschluss des Festschreibvorgangs in den Speicher geschrieben.

  • grouped   Festgeschriebene Transaktionen werden bei einem commit-Aufruf in den Speicher geschrieben, jedoch erst nachdem ein konfigurierter Schwellenwert erreicht wurde. Sie können mit der Datenbankoption commit_flush_count einen Schwellenwert für einen Transaktionszähler oder mit der Datenbankoption commit_flush_timeout einen zeitbasierten Schwellenwert konfigurieren.

    Die Optionen commit_flush_count und commit_flush_timeout agieren beide als mögliche Trigger für die Bereinigung der Festschreibungen. Der zuerst erreichte Schwellenwert löst jeweils den Trigger aus. Wenn die Bereinigung eintritt, setzt UltraLite den Zähler und den Zeitgeber auf 0 zurück. Danach werden sowohl der Zähler als auch der Zeitgeber überwacht, bis einer dieser Schwellenwerte erneut erreicht wird.

  • on_checkpoint   Festgeschriebene Transaktionen werden bei einem Checkpoint-Vorgang in den Speicher geschrieben. Sie können einen Checkpoint mit einer der folgenden Methoden setzen:

    • CHECKPOINT-Anweisung. APIs, die über keine Checkpoint-Methode verfügen, müssen diese SQL-Anweisung verwenden.
    • Funktion ULCheckpoint für UltraLite Embedded SQL
    • Checkpoint-Methode für ein Verbindungsobjekt in einer C++-Komponente

Siehe auch