Created
February 15, 2019 20:30
-
-
Save theothermattm/eb09000352295de917a9e7469e4791d7 to your computer and use it in GitHub Desktop.
Delete All Tables in an Oracle Schema
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
-- https://stackoverflow.com/questions/1690404/how-to-drop-all-user-tables | |
BEGIN | |
FOR cur_rec IN (SELECT object_name, object_type | |
FROM user_objects | |
WHERE object_type IN | |
('TABLE', | |
'VIEW', | |
'PACKAGE', | |
'PROCEDURE', | |
'FUNCTION', | |
'SEQUENCE', | |
'SYNONYM', | |
'PACKAGE BODY' | |
)) | |
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