如何刪除某個用戶的所有表的數據而保留表結構?

A:

表太多,一個一個清空太麻煩了,有沒有簡便的方法?

Q:

SQL> spool d:/delete.sql
SQL> select 'truncate table '||table_name ||';' from cat where table_type=upper('table');
SQL> spool off;
SQL> @d:/delete.sql  --通過@d:/delete.sql 命令,執行文本里的語句

注意:
一定要登陸到要清空的用戶下
如:connect user/psw
最好先備份一下數據庫。冷備份,或exp備份都可
因爲truncate命令不能rollback;

在d:/下可以看到delete.sql文件。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章