Poiché la chiave esterna della tabella PRODUCT non specifica un ON DELETE
azione, avrà il comportamento predefinito che è RESTRICT
. Poiché non puoi aggiornare questo vincolo a SET NULL
, probabilmente dovresti impostarli da solo NULL.
Innanzitutto, modifica la tabella in modo che la chiave esterna SUPPLIER_NAME possa accettare valori NULL.
Quindi, aggiorna i PRODOTTI il cui fornitore si trova negli USA, imposta il loro NOME_FORNITORE su NULL. Qualcosa del genere:
update PRODUCT set SUPPLIER_NAME = NULL where SUPPLIER_NAME IN (
select SUPPLIER_NAME from SUPPLIER where COUNTRY = 'USA');
E infine puoi cancellare i FORNITORI con PAESE ='USA'.