2013-10-26 15:50 4996人阅读 评论(1) 收藏 举报
 
--.sql脚本

--唯一注意的是下面的D:\dropobj.sql 为操作的.sql;

--用于删除当前用户的所有对象

--use for drop all objects in current user;

set heading off;

set feedback off;

spool D:\dropobj.sql;

prompt --删除约束条件

select 'alter table '||table_name||' drop constraint '||constraint_name||' ;'

from user_constraints where constraint_type='R';

prompt --删除表

select 'drop table '||table_name ||';' from user_tables;

prompt --删除视图

select 'drop view ' ||view_name||';' from user_views;

prompt --删除序列

select 'drop sequence ' ||sequence_name||';' from user_sequences;

prompt --删除函数

select 'drop function ' ||object_name||';'  from user_objects

where object_type='FUNCTION';

prompt --删除存储过程

select 'drop procedure '||object_name||';' from user_objects

where object_type='PROCEDURE';

prompt --删除包

prompt --删除包内容

select 'drop package '|| object_name||';' from user_objects

where object_type='PACKAGE';

prompt --删除数据库链接

select 'drop database link '|| object_name||';' from user_objects

where object_type='DATABASE LINK';

prompt --删除隐藏对象

select 'drop synonym '|| object_name||';' from user_objects  where object_type='SYNONYM';

prompt --删除物化视图

select 'drop materialized view '|| object_name||';' from user_objects  where object_type='MATERIALIZED VIEW';

spool off;

set heading on;

set feedback on;

@@D:\dropobj.sql;

host del D:\dropobj.sql;

--done for drop objects in current user;

--在SQL*PLUS 将这整段作为.sql导入或者直接复制黏贴,按F5执行,完成。 

注释: 1.上面这个语句,在pl/sql里面是放在命令里面执行的。 2.set heading off; 意思就是关闭表头。如果不关闭,写入dropobj.sql文件中就会带有结果集的表头如: 'DROPTABLE'||TABLE_NAME||';' ------------------------------------------ drop table TEACHER; 实际上我们需要的是“drop table TEACHER;”,“'DROPTABLE'||TABLE_NAME||';' ”就是表头。 3.set feedback off; 意思就是关闭回显。如果不关闭,写入dropobj.sql文件中就会带有返回结果集的大小等信息,如:"137 rows selected" 4.spool c:\dropobj.sql; 把结果集写入这个文件。spool off; 结束写入。 5.@@c:\dropobj.sql; 执行这个sql 6.host del c:\dropobj.sql; 删除主机上这文件。 7.CONSTRAINT_TYPE 就是键的类型: Sql代码 1. C (check constraint on a table) 2. P (primary key) 3. U (unique key) 4. R (referential integrity) 5. V (with check option, on a view) 6. O (with read only, on a view) 8.当执行'drop package ………… '这句时,package body会被同时删除。

ORACLE删除某用户下所有对象的更多相关文章

  1. Oracle删除指定用户下所有对象

    --.sql脚本 --唯一注意的是下面的d:\dropuserobj.sql为操作的.sql; --用于删除当前用户的所有对象 --use for drop all objects in curren ...

  2. oracle 删除某个用户下的所有对象

    先存放好dropobj.sql 文件 然后登录需要删除的用户 删除前最好备份一下:(备份是在cmd中进行的) C:\Users\panfu>exp file=d:\expall.dmp log= ...

  3. oracle 删除当前用户下多个表

    1.执行Sql语句: select 'drop table '||table_name||';' from cat where table_type='TABLE' 可查询到当前用户下所有的表,如图: ...

  4. oracle删除当前用户下所有表

    1.如果有删除用户的权限,则可以: drop user user_name cascade; 加了cascade就可以把用户连带的数据全部删掉. 删除后再创建该用户.--创建管理员用户create u ...

  5. ORACLE删除当前用户下所有的表的方法

    1.如果有删除用户的权限,则可以: drop user user_name cascade; 加了cascade就可以把用户连带的数据全部删掉. 删除后再创建该用户. --创建管理员用户 create ...

  6. Oracle删除当前用户下所有的表的方法1

    1.如果有plsql客户端,则可以使用该用户登录,选中所有表 右键Drop即可. 2.如果有删除用户的权限,则可以: ? 1 drop user user_name cascade; 加了cascad ...

  7. oracle 删除当前用户下所有的表、索引、序列...

    select 'drop table "' || table_name ||'";'||chr(13)||chr(10) from user_tables;  --delete t ...

  8. Oracle中删除用户下所有对象的多种方法

      Oracle删除用户下所有对象的方法未必人人都会,下面就为您介绍两种常用的Oracle删除用户下所有对象的方法,希望对您学习Oracle删除用户方面能有所帮助. 方法1: drop user XX ...

  9. oracle删除当前用户以及当前用户所有表、索引等操作

    ORACLE删除当前用户下所有的表的方法 如果有删除用户的权限,则可以: drop user user_name cascade; 加了cascade就可以把用户连带的数据全部删掉.删除后再创建该用户 ...

随机推荐

  1. BZOJ1907 树的路径覆盖

    ydc题解上写着贪心,后来又说是树形dp...可惜看不懂(顺便骗三连) 其实就是每个叶子开始拉一条链,从下面一路走上来,遇到能把两条链合起来的就合起来就好了. /******************* ...

  2. js在类似数组的对象中使用push

    let obj = { "2": "a", "3": "b", length: 3, push: Array.proto ...

  3. js 怎样获取div 图片等的宽度,只要值,不要px

    给你的div命名id=“abc”,js中用下面的语句就能获取到js的宽度并赋值给a a=document.all.abc.offsetWidth; 然后通过 alert(a); 就能弹出这个值来了.

  4. DTD——demo

    body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...

  5. block ,GCD(转)

    原文:http://blog.sina.com.cn/s/blog_45e2b66c01010dhd.html 1.GCD之dispatch queue http://www.cnblogs.com/ ...

  6. gradle仓库配置

    Android Studio使用Gradle构建app.Gradle的使用非常灵活,其中可以设置使用多种类型的仓库,来获取应用中使用的库文件.  支持的类型有如下几种: 类型 说明 Maven cen ...

  7. 1.2.2 Text_Reverse

    Text Reverse Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Proble ...

  8. Python模块 实现过渡性模块重载

    本文是在阅读Python 学习手册后  感觉比较不错的一个实现模块重载的一个模块,该模块可以实现对已经加载在运行程序中的模块实现重新加载,并且该模块可以递归的实现对要重新加载的模块内所引用的其它模块的 ...

  9. ORACLE常用系统查询

    目录(?)[-] 查询系统所有对象 查看系统所有表 查看所有用户的表 查看当前用户表 查看用户表索引 查看主键 查看唯一性约束 查看外键 查看表的列属性 查看所有表空间 查看oracle最大连接数 修 ...

  10. vue组件独享守卫钩子函数参数详解(beforeRouteEnter、beforeRouteUpdate、beforeRouteLeave)

    一样的和前面路由钩子类似的步骤 首先在demo下面的components下面新建一个test.vue组件 test组件代码 <template> <div class="t ...