Ponieważ klucz obcy do Twojej tabeli PRODUCT nie określa ON DELETE
akcja, będzie miała domyślne zachowanie, czyli RESTRICT
. Ponieważ nie możesz zaktualizować tego ograniczenia do SET NULL
, prawdopodobnie musiałbyś sam ustawić je na NULL.
Najpierw zmień tabelę, aby klucz obcy SUPPLIER_NAME mógł akceptować wartości NULL.
Następnie zaktualizuj PRODUKTY, których dostawca znajduje się w USA, ustaw ich SUPPLIER_NAME na NULL. Coś takiego:
update PRODUCT set SUPPLIER_NAME = NULL where SUPPLIER_NAME IN (
select SUPPLIER_NAME from SUPPLIER where COUNTRY = 'USA');
I wreszcie możesz usunąć DOSTAWCÓW z COUNTRY ='USA'.