TransaktionEine Transaktion ist eine grundlegende Einheit der Geschäftslogik. Jede Transaktion besteht aus einer Reihe von SQL-Anweisungen. DML-Anweisungen im Zusammenhang mit Transaktionen ( Die Existenz von Transaktionen gewährleistet die Sicherheit der Daten. Transaktionsmechanismus: Bei jeder Ausführung einer DML-Anweisung wird der Vorgang aufgezeichnet, die Daten werden jedoch nicht geändert. Führen Sie abschließend ein Commit der Transaktion aus (Datensätze löschen, Festplattendaten ändern) oder machen Sie die Transaktion rückgängig (Datensätze löschen, Daten nicht ändern). Transaktionen haben vier Hauptmerkmale : ACID
Transaktionsisolationsebene: 1. Dieses Level weist das Dirty-Read-Phänomen auf 2. Read Diese Ebene löst das Dirty-Read-Problem, kann jedoch nicht wiederholt gelesen werden. 3. Das Problem der nicht wiederholbaren Lesevorgänge ist gelöst, aber Phantomlesevorgänge sind weiterhin vorhanden und die gelesenen Daten sind nicht real. 4. Serialisiertes Lesen/serialisiertes Lesen. Alle Probleme sind gelöst, ähnlich wie die Thread-Sicherheit beim Multithreading. Es gibt jedoch Ineffizienzen. Weil Transaktionen in die Warteschlange gestellt werden müssen. Die Standardisolationsstufe der Möchten Sie die Transaktion manuell bestätigen. Vor der Ausführung von DML. Demonstrieren Sie das manuelle Rollback einer Transaktion: Tabelle löschen, falls t_user1 vorhanden ist; Tabelle t_user1 erstellen( id int(3) Primärschlüssel auto_increment, Benutzername varchar(10) ); mysql> Tabelle t_user1 erstellen( -> id int(3) Primärschlüssel auto_increment, -> Benutzername varchar(10) -> ); Abfrage OK, 0 Zeilen betroffen (0,02 Sek.) mysql> einfügen in t_user1(Benutzername) Werte('h1'); Abfrage OK, 1 Zeile betroffen (0,01 Sek.) mysql> wähle * von t_user1; +----+----------+ | ID | Benutzername | +----+----------+ | 1 | h1 | +----+----------+ 1 Zeile im Satz (0,00 Sek.) mysql> rollback; //Rollback der Transaktionsabfrage OK, 0 Zeilen betroffen (0,00 Sek.) mysql> select * from t_user1; //Nach dem Rollback ist es immer noch dasselbe wie vorher, da mysql automatisch übermittelt +----+----------+ | ID | Benutzername | +----+----------+ | 1 | h1 | +----+----------+ 1 Zeile im Satz (0,00 Sek.) mysql> start transaction; //Transaktion manuell starten, automatische Transaktionsübermittlung deaktivieren. Abfrage OK, 0 Zeilen betroffen (0,00 Sek.) mysql> einfügen in t_user1(Benutzername) Werte('h2'); Abfrage OK, 1 Zeile betroffen (0,01 Sek.) mysql> einfügen in t_user1(Benutzername) Werte('h3'); Abfrage OK, 1 Zeile betroffen (0,00 Sek.) mysql> einfügen in t_user1(Benutzername) Werte('h4'); Abfrage OK, 1 Zeile betroffen (0,00 Sek.) mysql> wähle * von t_user1; +----+----------+ | ID | Benutzername | +----+----------+ | 1 | h1 | | 2 | h2 | | 3 | h3 | | 4 | h4 | +----+----------+ 4 Zeilen im Satz (0,00 Sek.) mysql> rollback; //Rollback-Abfrage OK, 0 Zeilen betroffen (0,01 Sek.) mysql> wähle * von t_user1; +----+----------+ | id | Benutzername | Am Ende sind die Daten auf der Festplatte noch immer dieselben wie vorher. +----+----------+ Löschdatensatz rückgängig machen, ohne die Daten auf der Festplatte zu ändern. | 1 | h1 | +----+----------+ 1 Zeile im Satz (0,00 Sek.) Dies ist das Ende dieses Artikels über die MySQL-Transaktionsanalyse. Weitere relevante MySQL-Transaktionsinhalte finden Sie in den vorherigen Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
>>: So verwenden Sie benutzerdefinierte Bilder in HTML zum Anzeigen von Kontrollkästchen
Als ich den Dienst täglich überprüfte und mir die...
1. Rahmen In einem Browser-Dokumentfenster kann n...
Nextcloud ist ein Open Source- und kostenloses Ne...
Im Allgemeinen verfügen Listen über Auswahlfunkti...
Inhaltsverzeichnis Drag & Drop-Implementierun...
Wenn Sie den Stil „table-layer:fixed“ für eine Ta...
Zusätzlich zu den B-Tree-Indizes bietet MySQL auc...
Ubuntu ist ein kostenloses und quelloffenes Deskt...
1. Spread-Operator Der Spread-Operator besteht au...
Wir alle haben Dateien auf unseren Computern gesp...
Version 1.4.2 Offizielle Dokumentation Dockerhub ...
1. Scroll-Ansicht Beim vertikalen Scrollen müssen...
Vorwort Js ist heutzutage die am häufigsten verwe...
1. Bereiten Sie zunächst VS2019 und die MySQL-Dat...
Inhaltsverzeichnis MySQL-Protokolldateien binlog ...