Transaktionen (SQL Server Compact)

Transaktionen bieten die Möglichkeit, eine Reihe von Datenbankänderungen in einem logischen Vorgang zu gruppieren. Nachdem Änderungen an der Datenbank vorgenommen wurden, kann für diese Änderungen als Ganzes ein Commit ausgeführt oder sie können als Ganzes abgebrochen werden. Microsoft SQL Server Compact 3.5 (SQL Server Compact 3.5) unterstützt Transaktionen. Sie können Transaktionen auf unterschiedliche Weise verwenden:

  • Programmgesteuert mithilfe von API-Funktionen von ADO.NET oder OLE DB
  • Mithilfe von SQL Server Compact 3.5 Query Analyzer auf einem Gerät
  • Mithilfe von SQL Server Management Studio auf einem Desktop

Transaktionen stellen sicher, dass die Eigenschaften Unteilbarkeit, Konsistenz, Isolation und Beständigkeit (Atomicity, Consistency, Isolation und Durability, ACID) eingehalten werden, sodass für die Daten ein ordnungsgemäßer Commit ausgeführt und sie in die Datenbank eingetragen werden. Weitere Informationen zu den ACID-Eigenschaften von Transaktionen finden Sie unter "Transaktionen" in der SQL Server-Onlinedokumentation.

Beim Entwickeln von Anwendungen, die in SQL Server Compact 3.5 ausgeführt werden sollen, müssen Sie auf die folgenden Unterschiede zwischen SQL Server Compact 3.5 und Microsoft SQL Server 2008 achten:

  • SQL Server Compact 3.5 bietet keine Unterstützung für das Schachteln von Transaktionen, unterstützt jedoch parallele Transaktionen in ADO.NET.
  • Wenn in SQL Server Compact 3.5 ein Cursor innerhalb einer Transaktion geöffnet wird, besteht der Cursor innerhalb des Bereichs dieser Transaktion. Wenn die Transaktion abgebrochen wird, besteht auch der Cursor nicht mehr. Damit ein Cursor nach einer abgebrochenen Transaktion weiterverwendet werden kann, müssen Sie den Cursor außerhalb des Bereichs der Transaktion erstellen. Im Kontext von OLE DB für SQL Server Compact 3.5 bedeutet das, dass das Recordset ungültig ist und geschlossen werden muss. Wenn ein Commit für die Transaktion ausgeführt wird, besteht der Cursor weiterhin und ist voll funktionsfähig.
  • SQL Server Compact 3.5 bietet keine Unterstützung für verteilte Transaktionen.
  • SQL Server Compact 3.5 bietet keine Unterstützung für Sicherungspunkte. Sicherungspunkte ermöglichen einer Anwendung einen Teilrollback einer Transaktion, falls ein kleiner Fehler festgestellt wird. Die Anwendung muss weiterhin einen Commit oder Rollback für die vollständige Transaktion ausführen, sobald diese abgeschlossen ist.

In diesem Abschnitt

Thema Beschreibung

Kontrollieren von Transaktionen

Beschreibt die Anwendungssteuerung bei Beginn und Ende einer Transaktion.

Transaktionstypen

Beschreibt die zwei Transaktionstypen, die von SQL Server Compact 3.5 unterstützt werden: mithilfe eines automatischen Commits oder explizit.

Transaktionen und Konnektivität

Beschreibt die zwei Methoden der Verbindungsherstellung und des Datenaustausches mit Datenbanken von Microsoft SQL Server: Remotedatenzugriff (Remote Data Access, RDA) und Mergereplikation.

Transaktionsbereich

Beschreibt die Implementierung und die Einschränkungen der TransactionScope-Klasse.