删除用户所有的表,带有级联关系:
1 --创建存储过程 2 CREATE OR REPLACE 3 PROCEDURE DROPTABLES IS 4 V_SQL VARCHAR2(2000); 5 CURSOR CUR IS SELECT TABLE_NAME FROM USER_TABLES ORDER BY TABLE_NAME; 6 BEGIN 7 FOR ROWS IN CUR LOOP V_SQL := 'drop TABLE ' || ROWS.TABLE_NAME || ' cascade constraints'; 8 DBMS_OUTPUT.PUT_LINE(V_SQL); 9 EXECUTE IMMEDIATE V_SQL; 10 END LOOP; 11 EXECUTE IMMEDIATE 'purge recyclebin'; 12 END DROPTABLES; 13 --执行存储过程 14 begin 15 -- Call the procedure 16 droptables; 17 end;
建议在执行该存储过程之前先对数据库进行备份。