请教有没有可以在oracle 10G的sqlplus中一条可以将所有表删除的语句,在DOS
下。急需。

解决方案 »

  1.   

    CREATE OR REPLACE PROCEDURE drop_table IS
        CURSOR myCursor IS SELECT table_name FROM user_tables;
        strSQL user_tables.table_name%type;
    BEGIN
        OPEN myCursor;
        FETCH myCursor INTO strSQL;    
        WHILE myCursor%FOUND LOOP
            EXECUTE IMMEDIATE 'DROP TABLE ' || strSQL || ' CASCADE CONSTRAINTS';    
            FETCH myCursor INTO strSQL;    
        END LOOP;
        CLOSE myCursor;
    END;
    /
      

  2.   

    如果要删除该用户下的所有对象
    可以直接drop user xxx cascade
    再重新创建用户