热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Oracle:删除当前用户的所有对象(表、视图、触发器、存储过程、函数)

先把代码贴这里,晚些时候说明一下,怕忘了:)如果有高手发现错误或者不合适的地方请即刻指出,谢了DECLARETYPEname_listISTAB
先把代码贴这里,晚些时候说明一下,怕忘了:)
如果有高手发现错误或者不合适的地方请即刻指出,谢了
DECLARE
TYPE name_list 
IS   TABLE   OF   VARCHAR2 ( 40 );
TYPE type_list 
IS   TABLE   OF   VARCHAR2 ( 20 );

Tab_name name_list:
= name_list();
Tab_type type_list:
= type_list();

sql_str 
VARCHAR2 ( 500 );
BEGIN
sql_str :
=   ' select uo.object_name,uo.object_type from user_objects uo where uo.object_type not in( '' INDEX '' , '' LOB '' ) order by uo.object_type desc ' ;
EXECUTE  IMMEDIATE sql_str  BULK  COLLECT  INTO  tab_name,tab_type;

FOR  i  IN  Tab_name.FIRST.. Tab_name.LAST LOOP
sql_str :
=   ' DROP  '   ||  Tab_type(i)  ||   '   '   ||  Tab_name(i);
EXECUTE  IMMEDIATE sql_str;
END  LOOP;
END ;

推荐阅读
author-avatar
我爱投资理财
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有