sql >> Database >  >> RDS >> Oracle

SQL:verwijder alle gegevens uit alle beschikbare tabellen

Er is geen commando 'ALTER TABLE XXX ALLE BEPERKINGEN UITSCHAKELEN'

Ik stel dit voor;

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. De naam van een tabel in SQL Server wijzigen (T-SQL)

  2. Alle controlebeperkingen in SQL Server-database inschakelen - SQL Server / TSQL-zelfstudie deel 88

  3. Beste manier om te controleren op lege of null-waarde

  4. VBA Alchemie:methoden omzetten in eigenschappen