? Writing effektive und erfolgreiche SQL ( Structured Query Language )-Sequenzen können so viel eine Kunst als eine Wissenschaft. Es gibt bestimmte Strukturen und Begriffe , die verwendet werden , um das Ergebnis der Programmierer will produzieren muss. In SQL Server , ist eine Transaktion eine spezifische und isolierte Einheit der Arbeit. Jede Einheit muss abgeschlossen sein, bevor eine andere Einheit kann beginnen , und jede Transaktion muss gesagt werden, zu beenden . Dies wird mit dem "Commit Transaction "-Befehl , der mehrere Dinge tut für den Entwickler durchgeführt. Beendet eine Transaktion
den Servern , im Zuge der Berechnung eine bestimmte Transaktion durchführen kann viele verschiedene Aufgaben . Im Idealfall wird der Entwickler schreiben eine komplette Transaktion, die sowohl produziert das gewünschte Ergebnis und tut dies in einer logischen Reihenfolge . Durch die Erteilung der Transaktion Commit -Befehl wird der Programmierer dem Server mitzuteilen , dass alle Berechnungen mit dieser spezifischen Transaktion zugeordnet wurden abgeschlossen und dauerhaft zu schreiben , die Ergebnisse in die Datenbank.
Gibt Ressourcen frei
Ein Computer verarbeitet nur ausführbaren Code in der Reihenfolge geschrieben . Dies bedeutet, dass bis eine Transaktion geschlossen wird, die Ressourcen verpflichtet, die Durchführung dieser Transaktion wird nicht zur Verfügung gestellt werden für andere Transaktionen oder Aufgaben werden. Commit Transaktion , wenn sie korrekt mit einem entsprechenden Befehl begin transaction verpaart werden diese Ressourcen frei und lassen den Server , um voranzukommen mit anderen Berechnungen.
Verfolgt offenen Transaktionen
< br >
Jede Transaktion muss von einem Begin Transaction -Befehl ausgelöst werden . Der Server hält Zählung jeder Transaktion durch schrittweises Hinzufügen eines an einen laufenden tally aller offenen Transaktionen . Wenn es andere offene Transaktionen sind, wird ein Commit Transaction -Befehl, um eins zu verringern , aber dies nicht unbedingt zurück auf Null . Eine Zählung größer Null bedeutet, dass alle offenen Transaktionen nicht abgeschlossen sind. Dies bedeutet, dass die Datensätze noch nicht permanent, und die Ressourcen sind nicht freigegeben .
Erlaubt komplexe Berechnungen
Die Transaktion Commit -Befehl steuert auch "nested "-Transaktionen . Der Programmierer startet eine Transaktion und dann können viele komplexe Transaktionen in der es zu schreiben. Jede verschachtelte Transaktion muss eine commit-Befehl , und die ursprüngliche Transaktion muss dann geschlossen , um alle Berechnungen permanent werden. Commit Transaktion gibt dem Entwickler ein kleines Maß an error fangen . Wenn der Zähler Null ist, wenn der Commit -Befehl gegeben wird , wird ein Fehler generiert, da gibt es keine Korrelation beginnen Befehl .