oracle中删除某个用户下的所有表



一般的方法:
先使用sql查询:

SELECT 'DELETE FROM '|| table_name || ';' FROM USER_TABLES ORDER BY TABLE_NAME;

将查询结果复制一下,在sql命令窗口里再执行一次就删除了所有的表。

还有一种更全面的删除:
和上一中类似,先使用sql查询:

select 'drop table '||table_name||';' from cat where table_type='TABLE' ORDER BY TABLE_NAME;

这个查询的是cat表,查询的结果条数会大于上一种,因为里面包含了BIN$开头的表,oracle中删除表后会有残留,如果想要把这些残留的表也删除就要中这个查询sql了,然后像上一种方法一样

将查询结果复制一下,在sql命令窗口里再执行一次就删除了所有的表。
————————————————
版权声明:本文为CSDN博主「九尾狐的yi巴」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/jiuweihu521/article/details/81115801


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM