sql >> Databáze >  >> RDS >> Oracle

Zkrácení tabulky v Oracle získává chyby

Musíte zaměnit příkaz TRUNCATE za příkazy DELETE, pomalejší a protokolované, ale tak to lze udělat, když jsou nastavena omezení.

DELETE mytablename;

Buď to, nebo můžete najít cizí klíče, které odkazují na příslušnou tabulku, a dočasně je deaktivovat.

select 'ALTER TABLE '||TABLE_NAME||' DISABLE CONSTRAINT '||CONSTRAINT_NAME||';'
from user_constraints
where R_CONSTRAINT_NAME='<pk-of-table>';

Kde pk-of-table je název primárního klíče zkrácené tabulky

Spusťte výstup výše uvedeného dotazu. Až to uděláte, nezapomeňte je znovu povolit, stačí změnit DISABLE CONSTRAINT do ENABLE CONSTRAINT



  1. Jak zkontrolovat, zda je vypočítaný sloupec „trvalý“ na serveru SQL Server

  2. Odstranění HODNĚ dat v Oracle

  3. Problém při vytváření spouštěče v MySQL

  4. Zobrazte zbytek řádku s nulou nebo 0 pro sloupce, které nebyly nalezeny