Oracle中exp备份某个用户后,imp到新的数据库中提示对象已存在,如何删除该用户下所有对象?

我知道dropuserXXXXcascade可以,但是重新创建该用户后imp导入时还是有部分function..提示已存在,大家知道如何在不删除用户的情况下,删除所有对象... 我知道 drop user XXXX cascade 可以,但是重新创建该用户后 imp 导入时还是有部分 function.. 提示已存在,大家知道如何在不删除用户的情况下,删除所有对象?谢谢了 展开
 我来答
太平岁年丰9
2013-09-22 · TA获得超过1231个赞
知道小有建树答主
回答量:1017
采纳率:100%
帮助的人:1092万
展开全部
删除用户是最方便的,删除用户后它所拥有的对象全部会被删除
建议你将exp/imp命令行都贴出来给你分析
追问
谢谢你的回答,这个我知道,我也正是这么做的,但我重新创建用户 imp 时所有表都导入成功,但还是提示有几个 function 已存在(不仅仅是function),估计是创建用户的时候有默认帮你创建了那些function,所以这里应该还是有部分对象的,我想问的是如何在不删除用户的情况下,删除所有对象
追答
begin
for x in (select 'drop '||object_type||' '||owner||'.'||object_name sql1 from dba_objects where owner='XXX') loop
execute immediate x.sql1;
end loop;
end;
/
--XXX是你要删除对象的用户,要大写
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式