So lösen Sie den MySQL-Fehler: Die untergeordnete Zeile weist eine Fremdschlüsseleinschränkung auf, ein spezifisches Codebeispiel ist erforderlich.
Bei Verwendung einer MySQL-Datenbank kann der Fehler „Eine untergeordnete Zeile kann nicht hinzugefügt oder aktualisiert werden: Eine Fremdschlüsseleinschränkung schlägt fehl“ auftreten. Dieser Fehler weist normalerweise auf ein Fremdschlüsseleinschränkungsproblem beim Einfügen oder Aktualisieren von Daten hin. In diesem Artikel wird erläutert, wie Sie dieses Problem lösen können, und es werden konkrete Codebeispiele bereitgestellt.
Lassen Sie uns zunächst die Fremdschlüsseleinschränkungen verstehen. In einer Datenbank ist ein Fremdschlüssel eine Beziehung, die zum Herstellen einer Verbindung zwischen Tabellen verwendet wird. Es verweist auf den Primärschlüssel einer anderen Tabelle und wird zur Aufrechterhaltung der Datenkonsistenz und -integrität verwendet. Fremdschlüsseleinschränkungen beschränken das Einfügen oder Aktualisieren von Daten. Die angegebenen Bedingungen müssen erfüllt sein, andernfalls wird ein Fehler ausgegeben.
Wenn wir auf den Fehler „Eine untergeordnete Zeile kann nicht hinzugefügt oder aktualisiert werden: Eine Fremdschlüsseleinschränkung schlägt fehl“ stoßen, liegt dies im Allgemeinen an einem der folgenden Gründe:
Hier sind mehrere gängige Lösungen:
Hier ist ein spezifisches Codebeispiel, um zu veranschaulichen, wie dieses Problem gelöst werden kann:
Angenommen, wir haben zwei Tabellen: Benutzertabelle (Benutzer) und Auftragstabelle (Bestellungen). Der Primärschlüssel der Benutzertabelle ist die Benutzer-ID (user_id), und der Fremdschlüssel der Bestelltabelle ist die Benutzer-ID, die zum Zuordnen der Benutzertabelle verwendet wird. 🔜
order_id INT PRIMARY KEY AUTO_INCREMENT,user_id INT,
order_date DATE, FOREIGN KEY (user_id) REFERENCES users(user_id)
);
Jetzt wollen wir ein Datenelement in die Bestelltabelle einfügen, aber die Benutzer-ID nicht in der Benutzertabelle vorhanden ist, wird ein Fremdschlüsseleinschränkungsfehler ausgelöst. Um dieses Problem zu lösen, können wir zunächst entsprechende Benutzerdaten in die Benutzertabelle einfügen und dann die Bestelldaten einfügen:
-- Zuerst Benutzerdaten einfügen
INSERT INTO user(username) VALUES ('John');
- - Dann Bestelldaten einfügen
INSERT INTOorders(user_id, order_date) VALUES (1, '2022-01-01');
Mit dem obigen Beispielcode können wir „Kann keine untergeordnete Zeile hinzufügen oder aktualisieren“ lösen: a Fehler „Fremdschlüsseleinschränkung schlägt fehl“.
Das obige ist der detaillierte Inhalt vonEine untergeordnete Zeile kann nicht hinzugefügt oder aktualisiert werden: Eine Fremdschlüsseleinschränkung schlägt fehl – So beheben Sie den MySQL-Fehler: Die untergeordnete Zeile weist eine Fremdschlüsseleinschränkung auf. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!