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

altera tabella aggiungere chiave esterna non riesce

La tabella videoCat ha una o più righe che violano il vincolo di chiave esterna. Di solito hai una riga con un valore per _url che non esiste nel video della tabella.

Puoi verificarlo con la seguente query:

SELECT videoCat._url
FROM videoCat LEFT JOIN video ON videoCat._url = video.url
WHERE video.url IS NULL

MODIFICA

Per richiesta, ecco una query per eliminare quelle righe fastidiose:

DELETE FROM videoCat
WHERE NOT EXISTS (
    SELECT *
    FROM video
    WHERE url = videoCat._url
)