Heim > Datenbank > MySQL-Tutorial > Können referenzielle Integritätsprüfungen in MySQL bis zum Commit verschoben werden?

Können referenzielle Integritätsprüfungen in MySQL bis zum Commit verschoben werden?

Susan Sarandon
Freigeben: 2024-11-11 19:20:03
Original
389 Leute haben es durchsucht

Can Referential Integrity Checks in MySQL be Deferred Until Commit?

Verschieben referenzieller Integritätsprüfungen in MySQL bis zum Commit

Wie in einer vorherigen Frage besprochen, kann es wünschenswert sein, referenzielle Integritätsprüfungen bis zum Commit zu verschieben Commit einer Transaktion. Dies kann nützlich sein, wenn eine große Anzahl verwandter Datensätze in mehrere Tabellen eingefügt wird.

Der MySQL-Dokumentation zufolge „prüft InnoDB jedoch sofort Fremdschlüsseleinschränkungen; die Prüfung wird nicht auf die Transaktionsfestschreibung verschoben.“ Dies bedeutet, dass Verstöße gegen Fremdschlüsseleinschränkungen während des Einfügevorgangs zu einem Fehler führen, auch innerhalb einer Transaktion.

Diese Einschränkung verhindert bestimmte Vorgänge, die auf einer verzögerten Einschränkungsprüfung basieren, z. B. das Löschen eines Datensatzes, der auf sich selbst verweist ein Fremdschlüssel. Daher ist es nicht möglich, referenzielle Integritätsprüfungen bis zum Commit in MySQL mithilfe von InnoDB aufzuschieben.

Das obige ist der detaillierte Inhalt vonKönnen referenzielle Integritätsprüfungen in MySQL bis zum Commit verschoben werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage