Heim >Datenbank >MySQL-Tutorial >So lösen Sie nicht wiederholbare Lesevorgänge in MySQL
MySQLs Methode zur Lösung nicht wiederholbarer Lesevorgänge: Die MVCC-Mehrversions-Parallelitätskontrolle verwendet zwei versteckte Spalten nach jedem Datenelement, nämlich die Erstellungsversionsnummer und die Löschversionsnummer. Jede Transaktion wird erhöht Versionsnummer.
【Verwandte Lernempfehlung: MySQL-Lernen】
MySQL-Methode zum Lösen nicht wiederholbarer Lesevorgänge:
In MySQL ist die Standard-Transaktionsisolationsstufe wiederholbar fähig- read) ), um nicht wiederholbares Lesen zu lösen, verwendet innodb mvcc (Multi-Version Concurrency Control), um dieses Problem zu lösen.
mvcc verwendet zwei versteckte Spalten (Versionsnummer erstellen und Versionsnummer löschen), die nach jedem Datenelement hinzugefügt werden. Jede Transaktion hat zu Beginn eine steigende Versionsnummer. Neu hinzugefügt:
insert into user (id,name,age)values(1,"张三",10);
Update :
update user set age = 11 where id = 1;
Der Aktualisierungsvorgang wird durch Löschen + Hinzufügen implementiert. Markieren Sie zunächst die aktuellen Daten als gelöscht um die gelöschte Versionsnummer der Daten direkt auf die Versionsnummer der aktuellen Transaktion zu aktualisieren Folgende Bedingungen müssen erfüllt sein:
1. Bei der Abfrage muss die Versionsnummer der aktuellen Transaktion größer oder gleich der Erstellungsversionsnummer sein kleiner sein als die gelöschte Versionsnummer. Das heißt: create_version
Das obige ist der detaillierte Inhalt vonSo lösen Sie nicht wiederholbare Lesevorgänge in MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!