在PL/SQL中刪除所有表的方法是通過使用動態SQL來執行DROP TABLE語句。以下是一個示例代碼:
DECLAREv_sql VARCHAR2(100);
BEGIN
FOR t IN (SELECT table_name FROM user_tables) LOOP
v_sql := 'DROP TABLE ' || t.table_name;
EXECUTE IMMEDIATE v_sql;
END LOOP;
END;
/
這段代碼使用一個游標循環遍歷所有用戶表,并使用EXECUTE IMMEDIATE語句執行動態SQL來刪除每個表。在這個例子中,假設當前用戶是要刪除表的用戶,如果要刪除其他用戶的表,需要修改查詢語句。請注意,執行此代碼將永久刪除所有表,請謹慎使用。