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. 如何获取选定部分的HTML

    其实这个程序很简单,首先是如何获取选定部分的HTML,还记得这段吗: HTMLDoc := WebBrowser1.Document as IHTMLDocument2;  SelectRange : ...

  2. L1-050 倒数第N个字符串

    给定一个完全由小写英文字母组成的字符串等差递增序列,该序列中的每个字符串的长度固定为 L,从 L 个 a 开始,以 1 为步长递增.例如当 L 为 3 时,序列为 { aaa, aab, aac, . ...

  3. L242

    They provide a means of keeping track of the thousands of journal papers that are published monthly ...

  4. L217

    China has announced that it will further simplify the approval procedures for the private sector to ...

  5. mysql_query — 发送一条 MySQL 查询

    仅对 SELECT,SHOW,EXPLAIN 或 DESCRIBE 语句返回 一个资源标识符,如果查询执行不正确则返回 FALSE.对于 其它类型的 SQL 语句,在执行成功时返回 TRUE,出错时返 ...

  6. FDMemTable.Delta 转SQL语句脚本

    {*******************************************************} { } { XE7.XE8.XE10 安卓 IOS 框架 } { } { 版权所有 ...

  7. my.cnf配置优化

    MYSQL服务器my.cnf配置文档详解硬件:内存16G[client] port = 3306 socket = /data/3306/mysql.sock [mysql] no-auto-reha ...

  8. centos 7 NAT模式网络设置

    打开虚拟机.菜单栏点击‘编辑’ -> ‘虚拟网络设置’. 注意下图红色框地方的设置: 然后进入linux系统,编辑网络配置: vi /etc/sysconfig/network-scripts/ ...

  9. (树莓派、Arduino、物联网、智能家居、机器人)传感器、机械装置、电子元件

    定制 PCB 1. 机械类 履带底盘 2. 传感器 温度传感器(temperature).湿度传感器(humidity) DHT11/DHT22 驱动:BCM2835 (被动)红外传感器(Passiv ...

  10. Flume-NG源码阅读之Interceptor(原创)

    有的时候希望通过Flume将读取的文件再细分存储,比如讲source的数据按照业务类型分开存储,具体一点比如类似:将source中web.wap.media等的内容分开存储:比如丢弃或修改一些数据.这 ...