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

Impossibile eliminare una tabella MySQL a causa di vincoli di chiave esterna

Hai un vincolo (la chiave esterna) che fa riferimento a una tabella che deve essere eliminata. Quando la tabella viene eliminata, il vincolo non ha alcun senso perché fa riferimento a un oggetto che non può essere risolto.

Per prima cosa dovrai eliminare il vincolo su projs che fa riferimento a cases , quindi puoi eliminare cases .

Il ON DELETE SET NULL o qualunque cosa tu abbia configurato per farti dire

Si applica solo ai record in cases in fase di eliminazione, non l'intera tabella.

Per rimuovere la chiave esterna devi usare ALTER TABLE projs DROP FOREIGN KEY [keyname] . Dovrai sostituire [keyname] con il nome della chiave che puoi ottenere da SHOW CREATE TABLE projs