问题描述:
以system用户登录本地系统,通过sqlplus  imp  table工具导入ccense用户的dmp文件(从其他系统中备份的数据文件),导入完后发现错误,应该以ccense用户登录导入到ccense对象下,现在ccense用户表都在system用户下面。system用户没有备份。现在想删除导入到system用户下的所用数据怎样删除?如果有其他更好的方法最好不过。本人菜鸟,请详细说一下具体操作细节,以便我能理解,各位高手指点在此谢过.

解决方案 »

  1.   

    有一个办法,就是你先正确的将dmp文件导入 ccense 账户,然后从数据字典中查询一下 ccense 中都包含了哪些表,生成一个删除脚本,然后在 system 中执行此脚本,删除 system 账户下的这些表。其他的方法还不知道……
      

  2.   

    直接删除表就可以了,查询出来system用户下的非系统表,然后删除掉就可以了。
      

  3.   

    用ccense用户登录数据库 将你所需的dump文件导入 看生成了哪些表  在system用户下将这些表删除就行 用drop tablename
      

  4.   

    也可以根据时间来判断select 'drop table '||object_name ||';' from all_objects where to_char(created,'yyyy-mm-dd') >= '2016-08-01'  and object_type = 'TABLE'然后执行这个查询结果集