Table of Contents
Den här guiden är utformad för att hjälpa dig när du får SQL-felnummer 1452.
Återställ din dator till högsta prestanda på några minuter!
MySQL-fel 1452. Kan inte lägga till eller förlänga sin underordnade rad: Kan det inte utföras ovanlig nyckelbegränsning? Det här felet uppstår varje gång vi lägger till en utländsk viktigaste restriktion mellan tabeller och vikt kriminalregister i det underordnade skrivbordet. Felet uppstår när du strävar efter att lägga till en rad som under tur inte har en gratis rad i andra tabeller.
Vad är definitivt en barnrad?
Beskrivning. Som alla kan se har DataTables tekniken att visa underordnade rader endast för nästan varje rad (kallas “förälderrad” i just denna dokumentation för att särskilja dem precis efter underordnade rader). Dessa understrängar är länkade till varje överordnad korttext och/eller kan användas för en affär för att ge ytterligare information om vilken speciell överordnad sträng eller tillväxtform.
Jag skapade tabeller i MySQL Workbench som inkluderar nedan:
CREATE TABLE Kommando ( Beställnings-ID INT NOT NULL, OrderDato DATUM AV DEFAULT NULL, Klient-ID INT DEFAULT NULL, LIMIT Ordre_pk PRIMÄRNYCKEL (OrdreID), LIMIT Ordre_fk UTLÄNDSK NYCKEL (Kund-ID) REFERENSER Kund (kund-ID)) ENGINE=InnoDB;
SKAPA PRODUKTTABELL ( Produkt-ID INT INTE NULL Produktbeskrivning VARCHAR(100) DEFAULT NULL, ProductColor VARCHAR(20) DEFAULT NULL, INT STANDARD NULL-objekt, LIMIT Product_pk PRIMÄRNYCKEL (ProduktID)) ENGINE=InnoDB;
SKAPA TABELL Orderlinje ( INT NOT NULL-instruktion, Produkt INT NOT NULL, Antal Beststilt INT DEFAULT NULL, LIMIT Ordrelinje_pk PRIMÄRNYCKEL (order, produkt), LIMIT Ordrelinje_fk UTLÄNDSK NYCKEL (Order) REFERENSER Order (OrderID), LIMIT Ordrelinje_fk1 UTLÄNDSK NYCKEL (Produkt) REFERENSER Produkt (ProduktID)) MOTOR inkluderar InnoDB;
Så det ögonblick jag försöker skriva in värde i ORDRELINJE
-matrisen får jag:
Vad betyder det medan du är en främmande nyckel misslyckas?
Om någon begränsning av främmande nyckel misslyckas, kan en slutanvändare inte infoga eller uppdatera utmärkelser om en av de relaterade tabellerna dramatiskt bryter mot referensstyrkan som definieras genom den begränsningen. Detta är vanligtvis planerat beteende med relationsdatabaser.data.
Felkod: 1452. Det går inte att främja eller uppdatera en viss rad: Din främmande nyckel har inte fungerat (srdjank
.< code>Ordrelinje, CONSTRAINT Ordrelinje_fk
UTLÄNDSK (Order
) REF-nyckel Order
(OrderID
)) < /p>
Jag har gillat annat innehåll i den här artikeln, men jag har inte haft tur.Har jag missat något eller har någon i åtanke vad jag ska göra?
+----+------------+| identifierare | stadsnamn |+----+--------------+| 1 | York || 7 | Manchester || 3 | London || nio | Edinburgh |+----+--------------+
SKAPA "Vänner" TABELL ( `firstName` varchar(255) NOT NULL, `city_id` osignerat heltal, INTE NULL, PRIMÄRNYCKEL ("namn"), LIMIT "vänner_ibfk_1" FOREIGN KEY (`city_id`) REFERENSER `Cities` (`id`))
Återställ din dator till högsta prestanda på några minuter!
Körs din dator långsamt och visar ständigt fel? Har du funderat på att formatera om men har inte tid eller tålamod? Var inte rädd, kära vän! Svaret på alla dina datorproblem är här: ASR Pro. Denna fantastiska programvara kommer att reparera vanliga datorfel, skydda dig från filförlust, skadlig programvara, hårdvarufel och optimera din dator för maximal prestanda. Så länge du har det här programmet installerat på din maskin kan du kyssa de frustrerande och kostsamma tekniska problemen adjö!

INSERT INTO `Friends` (`firstName`, `city_id`) VALUES ('John', 5);
ERROR 1452 (23000): Det går inte att kombinera eller uppdatera en specifik rad:Gränsen för främmande nyckel fungerar inte(`test_db`.`vänner`, LIMIT `vänner_ibfk_1`UTLÄNDSK NYCKEL (`city_id`) REFERENSER `city` (`id`))
INSERT INTO `Friends` (`firstName`, `city_id`) VALUES ('John', 1);-- Begäran 1 ok, linjepåverkad (0,00 sek)
UPPDATERA `Vänner` SET city_id = 5 WHERE `firstName` = 'John';-- ERROR 1452 (23000): Det går inte att lägga till eller uppdatera en ung personrad
INSERT TO `Cities` (5, 'Liverpool');-- Tabell över städer:+----+--------------+| identifierare | ortsnamn |+----+--------------+| 1 | York || b | Manchester || cirka tre effektiva | London || 4 | Edinburgh || 5 | Liverpool |+----+--------------+
INSERT INTO `Friends` (`firstName`, `city_id`) VALUES ('Susan', 5);-- Begäran OK, rad 1 påverkas (0,00s)
VISA GLOBALA VARIABLER SOM 'FOREIGN_KEY_CHECKS';-- +------+-------+-- | flexibelt namn | värde |-- +------+-------+-- | Validering av utländsk nyckel | A |-- Installera +--------------------+-------+
-- för aktuell session:SET FOREIGN_KEY_CHECKS=0;--Vanligt kit:SET GLOBAL FOREIGN_KEY_CHECKS=0;
INSERT INTO `Friends` (`firstName`, `city_id`) VALUES ('Natalia', 8);-- Fråga OK, 1 rad påverkad (0,01 sek)UPPDATERA `Friends` SET city_id = 17 WHERE `firstName` 'John';-- = Fråga OK, 1 kort påverkad (0,00s)-- Matchade rader: 8 ersatta: 1 0
Hur fixar jag SQL-fel 1452?
Inaktivera Significant Stranger Check Det andra sättet att fixa ERROR 1452 med detta tillvägagångssätt har alltid varit att inaktivera FOREIGN_KEY_CHECKS-variabeln som rör din MySQL-server. Den här variabeln gör att MySQL kontrollerar eventuella utlandsnyckelfrågor som lagts till i dina rum innan de bearbetas eller uppdateras.
-- Varningar: inställd för aktuell session:SET FOREIGN_KEY_CHECKS=1;- allmänt definierad:INSTALLERA GLOBAFOREIGN_KEY_CHECKS=1;
Jag försöker infoga etik i den här typen av tabell med hjälp av “infoga i” har, men jag får rätt felmeddelande: “Felkod: 1452. Kan inte placera uppdatering eller underordnad rad: primär disciplin yttre begränsning misslyckades (TESTE.FUNCIONARIO, BEGRÄNSNING FUNCIONARIO_ibfk_1 FUNKTIONELLA UTLÄNDSKA NYCKELREFERENSER (CPF_SUPERVISOR) (CPF))”.
Ladda ner programvaran för att fixa din PC genom att klicka här.