大家好,欢迎来到IT知识分享网。
问题现象:删除数据库表,oracle中出现bin$XXXXXXXXXX==$0表 ,在对其 (bin$XXXXXXXXXX==$0)删除时,报 ORA-00933: SQL 命令未正确结束
出现原因:从oracle10g开始删除数据库表的时候并不是真正删除,删除的表系统会自动给他重命名 BIN$开头的名字 在把这些文件放到了recyclebin中,这个过程类似 windows里面删除的文件会被临时放到回收站中。
查看 bin$ 开头的表情况:
使用show tables 命令看不到这些表,查看这些表的命令如下:
命令一 :SELECT t.object_name,t.type ,t.original_name FROM user_recyclebin t; — 查询数据库中bin$开头的表
命令二:show recyclebin –查看被删掉的表的详细信息
命令三: select * from recyclebin;
解决方案:
方案一:清空回收站(recyclebin)
命令 : PURGE recyclebin;
方案二:收回表的命令:
命令 :flashback table 原表名 to before drop;
方案三:直接删除表,不经过回收站
方法一: drop table 表名 purge;
方法二 :停用数据库的回收战功能
10.1版本中,修改隐藏参数 _recyclebin
alter system set “_recyclebin” = false;
10.2版本中,
alter system set recyclebin = off;
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/151664.html