Latest web development tutorials

SQLite Transaktion

(Transaktion) ist eine Einheit der Arbeit an der Datenbank. Transaktion (Transaktion) ist eine logische Folge von Arbeits oder vollständige Sequenz, die manuell durch den Benutzer durchgeführt werden kann, kann er automatisch durch eine Art von Datenbank-Programm durchgeführt werden.

Transaktion (Transaktion) bezieht sich auf eine oder mehrere Änderungen, die Datenbank zu erweitern. Wenn Sie eine Aufzeichnung oder eine Aufzeichnung aktualisieren oder löschen Sie einen Datensatz aus der Tabelle zum Beispiel erstellen, führen Sie eine Transaktion auf dem Tisch. Es ist wichtig, um die Transaktion zu steuern, um die Integrität der Daten zu gewährleisten und Datenbankfehler behandeln.

In der Tat können Sie eine Menge von SQLite Abfrage Verband als eine Gruppe setzen, sie alle zusammen für die Ausführung im Rahmen einer Transaktion setzen.

Immobilientransaktionen

(Transaktion) Norm hat die folgenden vier Eigenschaften, in der Regel auf Basis von ACID Acronym:

  • Atomicity (Unteilbarkeit): um sicherzustellen , dass alle Arbeitseinheiten innerhalb der Operationen erfolgreich abgeschlossen sind, andernfalls wird die Transaktion im Falle eines Fehlers beendet werden, bevor die Operation zurück in einen früheren Zustand gerollt werden.

  • Konsistenz (Konsistenz): Stellen Sie sicher , dass die Datenbank Änderungsstatus korrekt auf der Transaktion wurde erfolgreich abgegeben.

  • Isolation (Isolation): die Transaktion unabhängig arbeiten und transparent.

  • Persistent (Haltbarkeit): um sicherzustellen , dass die Transaktion Ergebnisse oder Effekte im Falle eines Systemausfalls besteht noch eingereicht wurde.

Transaktionssteuerung

Verwenden Sie die folgenden Befehle, um die Transaktion zu steuern:

  • BEGIN TRANSACTION: beginnen Transaktion.

  • COMMIT: Speichern Sie Ihre Änderungen, oder Sie können das END TRANSACTION- Befehl verwenden.

  • ROLLBACK: rollen die Änderungen zurück.

Transaktionssteuerbefehle nur mit DML-Befehle INSERT, UPDATE und DELETE zusammen. Wenn sie keine Tabellen mit der Tabelle zu erstellen oder zu löschen, da diese Vorgänge in der Datenbank werden automatisch übernommen.

BEGIN TRANSACTION-Befehl

(Transaktion) können Sie die BEGIN TRANSACTION verwenden Sie den Befehl oder einfach BEGIN-Befehl zu starten. Solche Transaktionen dauern in der Regel die Ausführung fortgesetzt wird, bis zum nächsten COMMIT oder ROLLBACK-Befehl. Wenn jedoch die Datenbank geschlossen ist oder ein Fehler auftritt, wird die Transaktion rückgängig gemacht. Im Folgenden ist der Start einer Transaktion einfache Syntax:

BEGIN;

oder 

BEGIN TRANSACTION;

COMMIT-Befehl

COMMIT-Befehl wird verwendet, um Änderungen an der Datenbank Transaktionsaufruf Transaktionsbefehl zu speichern.

Befehl COMMIT alle Transaktionen seit dem letzten zu speichern COMMIT oder Befehl an die Datenbank zurückzunehmen.

COMMIT Befehlssyntax lautet wie folgt:

COMMIT;

oder

END TRANSACTION;

ROLLBACK-Befehl

ROLLBACK-Befehl ist ein Befehl, um die Transaktion rückgängig zu machen, wurde nicht in die Datenbank der Transaktion gespeichert.

ROLLBACK-Befehl kann verwendet werden, um die Transaktion seit dem letzten COMMIT oder ROLLBACK-Befehl ausgegeben, da rückgängig zu machen.

Syntax ROLLBACK-Befehl lautet wie folgt:

ROLLBACK;

Beispiele

Angenommen COMPANY Tabelle hat die folgenden Einträge:

ID Name Alter ADRESSE GEHALT
---------- ---------- ---------- ---------- ----------
1 Paul 32 California 20.000,0
2 Allen 25 Texas 15.000,0
3 Teddy 23 Norwegen 20.000,0
4 Mark 25 Reiche-Mond 65.000,0
5 David 27 Texas 85.000,0
6 Kim 22 Süd-Halle 45.000,0
7 James 24 Houston 10000.0

Nun lassen Sie uns eine Transaktion zu starten, und Löschen von Datensätzen aus der Tabelle Alter = 25, und schließlich verwenden wir den Befehl ROLLBACK alle Änderungen rückgängig zu machen.

sqlite> BEGIN;
sqlite> DELETE FROM DAS UNTERNEHMEN AGE = 25;
sqlite> ROLLBACK;

Überprüfen UNTERNEHMEN Tabelle, haben noch die folgenden Datensätze:

ID Name Alter ADRESSE GEHALT
---------- ---------- ---------- ---------- ----------
1 Paul 32 California 20.000,0
2 Allen 25 Texas 15.000,0
3 Teddy 23 Norwegen 20.000,0
4 Mark 25 Reiche-Mond 65.000,0
5 David 27 Texas 85.000,0
6 Kim 22 Süd-Halle 45.000,0
7 James 24 Houston 10000.0

Lassen Sie uns nun eine andere Transaktion zu starten, löschen Sie Datensätze aus der Tabelle Alter = 25, und schließlich verwenden wir den Befehl COMMIT alle Änderungen zu übernehmen.

sqlite> BEGIN;
sqlite> DELETE FROM DAS UNTERNEHMEN AGE = 25;
sqlite> COMMIT;

Überprüfen UNTERNEHMEN Tabelle, die folgenden Einträge:

ID Name Alter ADRESSE GEHALT
---------- ---------- ---------- ---------- ----------
1 Paul 32 California 20.000,0
3 Teddy 23 Norwegen 20.000,0
5 David 27 Texas 85.000,0
6 Kim 22 Süd-Halle 45.000,0
7 James 24 Houston 10000.0