Du skal udskifte TRUNCATE-sætningen til DELETE-sætninger, langsommere og logget, men det er måden at gøre det på, når begrænsninger er på plads.
DELETE mytablename;
Enten det, eller også kan du finde de fremmednøgler, der refererer til den pågældende tabel og deaktivere dem midlertidigt.
select 'ALTER TABLE '||TABLE_NAME||' DISABLE CONSTRAINT '||CONSTRAINT_NAME||';'
from user_constraints
where R_CONSTRAINT_NAME='<pk-of-table>';
Hvor pk-of-table
er navnet på den primære nøgle i tabellen, der afkortes
Kør outputtet af ovenstående forespørgsel. Når dette er gjort, skal du huske at aktivere dem igen, bare ændre DISABLE CONSTRAINT
ind i ENABLE CONSTRAINT