Freigeben über


Transaktionen und Parallelität

Gilt für: .NET Framework .NET .NET Standard

Herunterladen von ADO.NET

Eine Transaktion besteht aus einem einzelnen Befehl oder einer Gruppe von Befehlen, die als Paket ausgeführt werden. Mit Transaktionen können Sie mehrere Operationen in einem Arbeitsschritt zusammenfassen. Wenn an einer Stelle in der Transaktion ein Fehler auftritt, kann für alle Updates ein Rollback zum Zustand vor der Transaktion ausgeführt werden.

Eine Transaktion muss zur Gewährleistung der Datenkonsistenz die folgenden vier Kriterien, die so genannten ACID-Kriterien, erfüllen: Atomicity (Atomarität), Consistency (Konsistenz), Isolation und Durability (Dauerhaftigkeit). Die meisten relationalen Datenbanksysteme (z. B. Microsoft SQL Server) unterstützen Transaktionen, indem sie für Update-, Einfüge- oder Löschvorgänge, die durch eine Clientanwendung ausgeführt werden, entsprechende Sperr-, Protokollierungs- und Transaktionsverwaltungsfunktionen bereitstellen.

Hinweis

Transaktionen, an denen mehrere Ressourcen beteiligt sind, können die Parallelität senken, wenn Sperren zu lang gehalten werden. Halten Sie Transaktionen daher so kurz wie möglich.

Wenn an einer Transaktion mehrere Tabellen in derselben Datenbank oder auf demselben Server beteiligt sind, bieten explizite Transaktionen in gespeicherten Prozeduren oft eine bessere Leistung. Transaktionen in gespeicherten SQL Server-Prozeduren können Sie mithilfe der Transact-SQL-Anweisungen BEGIN TRANSACTION, COMMIT TRANSACTION und ROLLBACK TRANSACTION erstellen. Weitere Informationen finden Sie in der SQL Server-Onlinedokumentation.

Transaktionen, an denen verschiedene Ressourcen-Manager beteiligt sind, z. B. Transaktionen zwischen SQL Server und Oracle, erfordern eine verteilte Transaktion.

In diesem Abschnitt

Lokale Transaktionen
Zeigt, wie Transaktionen für eine Datenbank ausgeführt werden können.

Verteilte Transaktionen
Beschreibt die Ausführung von verteilten Transaktionen in ADO.NET.

System.Transactions-Integration in SQL Server
In diesem Artikel wird die System.Transactions-Integration mit SQL Server für die Arbeit mit verteilten Transaktionen beschrieben.

Im Artikel Optimistische Nebenläufigkeit werden die optimistische und pessimistische Nebenläufigkeit und die Vorgehensweise zum Prüfen auf Verstöße gegen die Parallelität beschrieben.

Weitere Informationen: