Skip to content

Instantly share code, notes, and snippets.

@HeathHopkins
Forked from mmattozzi/delete_all.sql
Created November 13, 2018 15:51
Show Gist options
  • Save HeathHopkins/33e09d026a1f34f9e8a460bcd7b7878e to your computer and use it in GitHub Desktop.
Save HeathHopkins/33e09d026a1f34f9e8a460bcd7b7878e to your computer and use it in GitHub Desktop.
Delete all objects in an Oracle Schema
BEGIN
FOR cur_rec IN (SELECT object_name, object_type
FROM all_objects
WHERE object_type IN ('TABLE', 'VIEW', 'PACKAGE', 'PROCEDURE', 'FUNCTION', 'SEQUENCE') AND
owner = '<schema_name>')
LOOP
BEGIN
IF cur_rec.object_type = 'TABLE' THEN
EXECUTE IMMEDIATE 'DROP ' || cur_rec.object_type || ' "' || cur_rec.object_name || '" CASCADE CONSTRAINTS';
ELSE
EXECUTE IMMEDIATE 'DROP ' || cur_rec.object_type || ' "' || cur_rec.object_name || '"';
END IF;
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.put_line('FAILED: DROP ' || cur_rec.object_type || ' "' || cur_rec.object_name || '"');
END;
END LOOP;
END;
/
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment