Heim  >  Artikel  >  Datenbank  >  Ausführliche Erläuterung der Methode zur Inspektion von Fremdschlüsseleinschränkungen zum Schließen untergeordneter Tabellen in MySQL (Bild)

Ausführliche Erläuterung der Methode zur Inspektion von Fremdschlüsseleinschränkungen zum Schließen untergeordneter Tabellen in MySQL (Bild)

黄舟
黄舟Original
2017-03-18 14:01:261409Durchsuche

Der folgende Editor bringt Ihnen einen Artikel über die Fremdschlüssel-Einschränkungsprüfungsmethode zum Schließen von Untertabellen in MySQL. Der Herausgeber findet es ziemlich gut, deshalb werde ich es jetzt mit Ihnen teilen und es allen als Referenz geben. Folgen wir dem Editor und werfen wir einen Blick darauf Schülertabellen-ID

Schritt 1:

Lehrer einfügen
create table teachers(teacherID int not null auto_increment primary key,teacherName varchar(8));
create table students(studentID int not null auto_increment primary key,teacherID int not null,studentName varchar(8),
constraint fk_students_teacherID foreign key (teacherId) references teachers(teacherId) on delete no action on update cascade);

Studenten einfügen:

insert into teachers(teacherName) values('NameA');

Ausführliche Erläuterung der Methode zur Inspektion von Fremdschlüsseleinschränkungen zum Schließen untergeordneter Tabellen in MySQL (Bild)

Aber gibt es eine Möglichkeit, unangemessene Daten einzufügen? Es gibt immer noch Möglichkeiten

insert into students(studentName,teacherID) values('NameB',100);--可以知道没有这个教师号、所以插入会出错。

Schritt 2: Ausführliche Erläuterung der Methode zur Inspektion von Fremdschlüsseleinschränkungen zum Schließen untergeordneter Tabellen in MySQL (Bild)

set Foreign_key_checks = 0; Das ist es.

Schritt 3:
insert into students(studentName,teacherID) values('NameB',100);

Ausführliche Erläuterung der Methode zur Inspektion von Fremdschlüsseleinschränkungen zum Schließen untergeordneter Tabellen in MySQL (Bild)
Auf Standardwerte zurücksetzen und Behalten Sie die Einstellungen bei. Prüfung von Schlüsseleinschränkungen.

Zusammenfassung:

set foreign_key_checks =1;
Der Hauptpunkt, den ich sagen möchte, ist, Foreign_key_checks = 0 zu setzen ; Fremdschlüsseleinschränkungen sind nutzlos. Zu diesem Zeitpunkt können Einfügungen in die Untertabelle durchgeführt werden, die gegen Fremdschlüsselbeschränkungen verstoßen.

Verwenden Sie dies nur, wenn dies unbedingt erforderlich ist.

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung der Methode zur Inspektion von Fremdschlüsseleinschränkungen zum Schließen untergeordneter Tabellen in MySQL (Bild). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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