一般的方法:
先使用sql查询:
1 |
<span class="hljs-keyword">SELECT</span> <span class="hljs-string">'DELETE FROM '</span>|| table_name || <span class="hljs-string">';'</span> <span class="hljs-keyword">FROM</span> USER_TABLES <span class="hljs-keyword">ORDER</span> <span class="hljs-keyword">BY</span> TABLE_NAME; |
将查询结果复制一下,在sql命令窗口里再执行一次就删除了所有的表。
还有一种更全面的删除:
和上一中类似,先使用sql查询:
1 |
<span class="hljs-keyword">select</span> <span class="hljs-string">'drop table '</span>||table_name||<span class="hljs-string">';'</span> <span class="hljs-keyword">from</span> cat <span class="hljs-keyword">where</span> table_type=<span class="hljs-string">'TABLE'</span> <span class="hljs-keyword">ORDER</span> <span class="hljs-keyword">BY</span> TABLE_NAME; |
这个查询的是cat表,查询的结果条数会大于上一种,因为里面包含了BIN$开头的表,oracle中删除表后会有残留,如果想要把这些残留的表也删除就要中这个查询sql了,然后像上一种方法一样
将查询结果复制一下,在sql命令窗口里再执行一次就删除了所有的表。