declare
begin
for i in (select aid ,address from address)
loop
for j in (select aid ,address from address )
loop
if i.address=j.address then
if i.aid!=j.aid then
update employee_add
set aid=i.aid
where aid=j.aid;
delete from address
where aid=i.aid;
end if;
end if;
end loop;
end loop;
end;
/
Этот код отлично работает как for loop
.После этого отображается сообщение об ошибке: ------
* Причина. Значение внешнего ключа не соответствует значению первичного ключа.
* Действие: Удалить внешний ключ или добавить соответствующий первичный ключ.key.
У меня есть таблицы employee[eid (primary key) ,ename]
, address[aid (primary
key),address]
и таблица отношений многих ко многим employee_add[eid,aid]
.Пожалуйста помоги!Заранее благодарен:)