Heim >Datenbank >MySQL-Tutorial >MySQL-Fehler 1452: Wie behebt man Fehler bei Fremdschlüsseleinschränkungen?

MySQL-Fehler 1452: Wie behebt man Fehler bei Fremdschlüsseleinschränkungen?

Barbara Streisand
Barbara StreisandOriginal
2025-01-21 05:02:10618Durchsuche

MySQL Error 1452: How to Resolve Foreign Key Constraint Failures?

MySQL-Fremdschlüsseleinschränkungsfehler: FEHLER 1452

Der MySQL-Fehler „FEHLER 1452: Eine untergeordnete Zeile kann nicht hinzugefügt oder aktualisiert werden: Eine Fremdschlüsseleinschränkung schlägt fehl“ tritt normalerweise auf, wenn versucht wird, eine Zeile in eine untergeordnete Tabelle einzufügen oder zu aktualisieren, ohne dass in der übergeordneten Tabelle ein passender Fremdschlüsselwert vorhanden ist.

Datenbankschema

Im angegebenen Datenbankschema verfügt die Tabelle ORDRELINJE über eine Fremdschlüsseleinschränkung, die auf die Spalte ORDERID in der Tabelle ORDRE verweist, und eine weitere Fremdschlüsseleinschränkung, die auf die Spalte PRODUKTID in der Tabelle PRODUKT verweist.

Fremdschlüssel-Einschränkungskonflikt

Beim Versuch, eine Zeile in die Tabelle ORDRELINJE einzufügen, prüft das System, ob die Werte der Spalten ORDER und PRODUKT mit den Werten der vorhandenen Zeilen in den Tabellen ORDRE bzw. PRODUKT übereinstimmen. Dieser Fehler wird ausgelöst, wenn keine passende Zeile gefunden wird.

Lösung

Um diesen Fehler zu beheben, stellen Sie sicher, dass die Werte ORDERID und PRODUKTID in der Tabelle ORDRELINJE den vorhandenen Zeilen in den Tabellen ORDRE und PRODUKT entsprechen. Fügen Sie vor dem Einfügen von ORDRELINJE die entsprechenden Zeilen in ORDRE und PRODUKT ein.

Beispiel

Wenn Sie beispielsweise versuchen, eine Zeile mit ORDERID = 100 und PRODUKTID = 200 in die Tabelle ORDRELINJE einzufügen, prüfen Sie zunächst, ob eine Zeile mit ORDERID = 100 in der Tabelle ORDRE vorhanden ist und ob eine Zeile mit PRODUKTID = 200 vorhanden ist in der PRODUKT-Tabelle. Wenn eine Zeile nicht vorhanden ist, fügen Sie diese Zeile ein, bevor Sie versuchen, ORDRELINJE einzufügen.

Das obige ist der detaillierte Inhalt vonMySQL-Fehler 1452: Wie behebt man Fehler bei Fremdschlüsseleinschränkungen?. 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