Mysql
 sql >> база данни >  >> RDS >> Mysql

ГРЕШКА 1452 (23000):Не може да се добави или актуализира дъщерен ред:ограничение на външния ключ е неуспешно

Причината, поради която получавате това изключение, е, защото вмъквате запис в таблица test_usershosts което е стойността на userID не присъства в таблица test_users . Същата като стойността на hid не присъства и в таблица test_hosts .

Таблица test_usershosts зависи от таблици:test_users и test_hosts . Затова се уверете, че когато вмъквате записи в таблица test_usershosts , стойностите за hid и userid вече съществува в родителските таблици:test_users и test_hosts .

Опитайте да изпълните тази заявка и със сигурност тя ще бъде вмъкната.

INSERT INTO test_usershosts (RID,userid,hid,Usr,Pass) 
VALUES (NULL,1120,30,'user','pass');

Виждам, че AUTO_INCREMENT опция за таблици:test_users и test_hosts , не са необходими, тъй като предоставяте стойности за всяка заявка, която изпълнявате в двете таблици.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySql заявката МЕЖДУ два низа понякога не работи

  2. MySQL заявка - идентифициране на данни с помощта на URL имена, където данните са организирани в йерахия

  3. mysql превръща множество редове в колони в един ред

  4. Срив на услугата XAMPP MySQL след рестартиране

  5. Появяване на броя на Mysql по група