Heim > Datenbank > MySQL-Tutorial > Warum müssen SQLite3-Fremdschlüsseleinschränkungen explizit aktiviert werden?

Warum müssen SQLite3-Fremdschlüsseleinschränkungen explizit aktiviert werden?

DDD
Freigeben: 2025-01-05 00:38:40
Original
879 Leute haben es durchsucht

Why Do SQLite3 Foreign Key Constraints Need to Be Enabled Explicitly?

SQLite3-Fremdschlüsseleinschränkungen

Bei der Verwendung von SQLite3 kann es zu einem Problem kommen, bei dem Zeilen in eine untergeordnete Tabelle eingefügt werden können, selbst wenn die übergeordnete Tabelle vorhanden ist Tisch ist leer. Dieses Verhalten entsteht durch das Standardverhalten von SQLite3, bei dem Fremdschlüsseleinschränkungen bei der Verbindung deaktiviert sind.

Um Fremdschlüsseleinschränkungen in SQLite3 zu aktivieren, führen Sie die folgende Abfrage jedes Mal aus, wenn Sie eine Verbindung zur Datenbank herstellen:

PRAGMA foreign_keys = ON;
Nach dem Login kopieren

Der Grund, diesen Befehl jedes Mal zu wiederholen, besteht darin, die Kompatibilität mit SQLite Version 2.x aufrechtzuerhalten. Standardmäßig verhält sich SQLite3 wie SQLite 2.x, das Fremdschlüsseleinschränkungen ignoriert.

In SQLite Version 4.x sind Fremdschlüsseleinschränkungen jedoch standardmäßig aktiviert, wodurch dieses Problem dauerhaft behoben wird.

Das obige ist der detaillierte Inhalt vonWarum müssen SQLite3-Fremdschlüsseleinschränkungen explizit aktiviert werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage