当前位置:首页 > 数据库 > Oracle

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

??

 

技术分享 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 ;

原文:http://blog.csdn.net/gongth_12/article/details/42234201


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!

相关教程推荐

其他课程推荐