Mysql
 sql >> Database >  >> RDS >> Mysql

ERRORE 1452 (23000):impossibile aggiungere o aggiornare una riga figlio:un vincolo di chiave esterna non riesce

Il motivo per cui ricevi quell'eccezione è perché stai inserendo un record nella tabella test_usershosts quale il valore di userID non è presente nella tabella test_users . Uguale al valore di hid non è presente anche nella tabella test_hosts .

Tabella test_usershosts dipende dalle tabelle:test_users e test_hosts . Quindi assicurati che quando inserisci i record nella tabella test_usershosts , i valori per hid e userid esiste già nelle tabelle principali:test_users e test_hosts .

Prova ad eseguire questa query e sicuramente verrà inserita.

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

Vedo che AUTO_INCREMENT opzione sulle tabelle:test_users e test_hosts , non sono necessari poiché stai fornendo valori su ogni query che stai eseguendo sulle due tabelle.