Was bedeutet "Commit der Transaktion" in SQL?

June 3

Effektive und erfolgreiche SQL schreiben können (strukturierte Abfragesprache) Sequenzen so viel eine Kunst als eine Wissenschaft sein. Es gibt bestimmte Strukturen und Terminologie, die verwendet werden muss, um das Ergebnis der Programmierer zu produzieren will. In SQL Server ist eine Transaktion eine bestimmte und isolierte Arbeitseinheit. Jede Einheit muss abgeschlossen sein, bevor eine andere Einheit kann beginnen, und jede Transaktion hat mitgeteilt werden, zu beenden. Dies geschieht mit dem Befehl "Commit Transaction", welches für den Entwickler mehrere Dinge tut.

Abschluss eine Transaktion

Die Server im Laufe der Berechnung einer bestimmten Transaktion können viele verschiedene Aufgaben durchführen. Im Idealfall wird der Entwickler eine komplette Transaktion schreiben, die sowohl zum gewünschte Ergebnis führt, und zwar in einer logischen Reihenfolge. Durch die Commit Transaction-Befehl, der Programmierer sagt dem Server, dass alle diese spezifischen Transaktion zugeordneten Berechnungen abgeschlossen sind und dauerhaft die Ergebnisse in die Datenbank schreiben.

Ressourcen freigegeben werden

Ein Computer verarbeiten nur ausführbaren Code in der Reihenfolge, die es geschrieben wird. Das heißt, bis eine Transaktion geschlossen wird, die Ressourcen zu durchführen verpflichtet, die Transaktion nicht für andere Transaktionen oder Aufgaben zur Verfügung gestellt wird. Commit Transaktion, wenn richtig mit einen entsprechenden Begin Transaction-Befehl gedeckt werden, diese Ressourcen freizugeben und ermöglichen es dem Server mit anderen Berechnungen vorankommen.

Verfolgt die Spuren der offener Transaktionen

Jede Transaktion muss von einem Begin Transaction-Befehl initiiert werden. Der Server hält die Anzahl aller Transaktionen durch inkrementell hinzufügen zu einer laufenden Zähler für alle offenen Transaktionen. Wenn andere offenen Transaktionen vorhanden sind, wird ein Commit Transaction-Befehl, die zählen um 1 zu verringern; aber dies nicht unbedingt zurück es auf NULL. Eine Anzahl größer als 0 (null) bedeutet, dass alle offenen Transaktionen noch nicht abgeschlossen. Dies bedeutet, dass die Datensätze noch nicht dauerhaft sind, und die Mittel nicht freigegeben.

Ermöglicht komplexe Berechnungen

Der Commit Transaction-Befehl steuert auch "verschachtelte" Transaktionen. Der Programmierer startet eine Transaktion und viele komplexe verwandte Transaktionen darin schreiben kann. Jede geschachtelte Transaktion müssen einen Commit-Befehl, und die ursprüngliche Transaktion muss dann geschlossen werden, um alle Berechnungen dauerhaft zu übernehmen. Commit Transaction übergibt der Entwickler auch ein kleines Maß der Fehler abfangen. Wenn der Zähler Null ist, wenn der Commit-Befehl gegeben wird, wird ein Fehler generiert, da es keine Korrelation von Befehl beginnen.