Oracle
 sql >> Baza danych >  >> RDS >> Oracle

SQL:usuń wszystkie dane ze wszystkich dostępnych tabel

Nie ma polecenia „ZMIEŃ TABELĘ XXX WYŁĄCZ WSZYSTKIE OGRANICZENIA”

Proponuję to;

BEGIN
  FOR c IN (SELECT table_name, constraint_name FROM user_constraints WHERE constraint_type = 'R')
  LOOP
    EXECUTE IMMEDIATE ('alter table ' || c.table_name || ' disable constraint ' || c.constraint_name);
  END LOOP;
  FOR c IN (SELECT table_name FROM user_tables)
  LOOP
    EXECUTE IMMEDIATE ('truncate table ' || c.table_name);
  END LOOP;
  FOR c IN (SELECT table_name, constraint_name FROM user_constraints WHERE constraint_type = 'R')
  LOOP
    EXECUTE IMMEDIATE ('alter table ' || c.table_name || ' enable constraint ' || c.constraint_name);
  END LOOP;
END;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak uzyskać skrypt tabeli w Oracle SQL Developer?

  2. Oracle:Jak liczyć wiersze o wartości NULL i NULL?

  3. Włączanie wirtualizacji w systemie BIOS w laptopie lub komputerze stacjonarnym dla maszyny wirtualnej Virtualbox

  4. Baza danych Oracle 21c

  5. Jak mogę wprowadzić wiele warunków w operatorze LIKE?