oracle中如何删除所有表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle中如何删除所有表相关的知识,希望对你有一定的参考价值。

如何将oracle中将自建用户kss下的所有表删除,我要重新导入.dmp文件。保持表空间不变. sql 语句怎么删除,不用sql又怎么删除,谢谢,刚开始用oracle

1、如果想要删除相应的表格,那么首先要知道表格位于那个数据库,这样才可以进行删除。

2、然后需要打开数据库,你会看到数据库内有很多表格。

3、往下拉,我们自己新建的表格一般都是位于最末端,找到表格右击。

4、右击选择“表”你会看到侧边栏会弹出“删除”点击他。

5、这时会提示你是否删除表格,如果想要彻底删除表格,那么必须要将约束条件和清除√这样才会删除的更彻底。

参考技术A ORACLE删除当前用户下所有的表的方法
1、如果有删除用户的权限,则可以:
drop user user_name cascade;
加了cascade就可以把用户连带的数据全部删掉。
删除后再创建该用户。
--创建管理员用户
create user 用户名 identified by 密码 default tablespace space_data(表空间名称) temporary tablespace space_temp(临时表空间名称);
--授权
grant connect,dba to 用户名;
--修改限额
ALTER USER "用户名" QUOTA UNLIMITED ON SPACE_DATA(表空间名称);
--查看所有用户对象
select uo.object_name,uo.object_type from user_objects uo where uo.object_type<>'LOB' order by uo.object_type desc

2、如果没有删除用户的权限,则可以执行:
select 'drop table '||table_name||';'
from cat
where table_type='TABLE'
将会输出一批删除表的sql语句,这些SQL语句执行一下就可以了。(需要有drop table的权限)
参考技术B 先说不用sql,下载一个工具,toad 8或9都行,就是蛤蟆头的那个工具,可以用它来访问oracle,找到用户,在找到表删除就行了。
再说用sql的,先登录的kss用户下,
sql>select * from tab; --找到用户下的所有表
sql>drop table ***; --用drop 命令一个个删除即可。
要用dmp导入,一定要删干净,否则导入时会报错
要保持原表空间不变,只要用原用户imp即可,当然导出文件也要是原表空间的。本回答被提问者采纳
参考技术C 删除scott下表:

scott@ORCL>select 'drop table '||table_name||' cascade'||';' from user_tables;

'DROPTABLE'||TABLE_NAME||'CASCADE'||';'
--------------------------------------------------
drop table DEPT cascade;
drop table T cascade;
drop table PLSQL_PROFILER_RUNS cascade;
drop table PLSQL_PROFILER_UNITS cascade;
drop table PLSQL_PROFILER_DATA cascade;
drop table DISK_CONN cascade;
drop table EMP cascade;
drop table TEST1 cascade;
drop table SYS_TEMP_FBT cascade;
drop table TEST cascade;

已选择10行。

剩下的就是复制粘帖语句了,但是如果有参照完整性的表可以特殊处理。
参考技术D 你可以select 'drop table '||table_name||' purge;' from user_tables;
执行出结果,然后复制结构,批量的执行就可以了。
如果是你imp导入的话,现存的表结构如果一样的话,可以用ignore参数的,指定忽略已经存在的对象。

所有表,约束,......我已经删除仍然存在于新连接ORACLE [关闭]

【中文标题】所有表,约束,......我已经删除仍然存在于新连接ORACLE [关闭]【英文标题】:all table, constraint,... i have deleted still exist in new connection ORACLE [closed] 【发布时间】:2021-03-21 13:18:50 【问题描述】:

所有表,约束,...我已删除仍然存在于新连接 ORACLE ** 有什么办法可以在 oracle 中删除架构**

【问题讨论】:

【参考方案1】:

您要删除您的架构吗? 然后使用

DROP SCHEMA schemaName RESTRICT;

如果您可以删除用户,那么所有关联的对象/模式都将被删除。

DROP USER username CASCADE;

【讨论】:

我试过了,但没用。我使用 sql developer 并右键单击然后选择删除然后创建新连接,所有表,触发器,.. 删除的架构存在于新架构中 你右键删除了什么?架构/用户、单个对象还是连接?

以上是关于oracle中如何删除所有表的主要内容,如果未能解决你的问题,请参考以下文章

oracle 中如何删除或修改 触发器?

Oracle数据库 之 如何彻底删除表

oracle只有某用户权限,要删除该用户下的所有对象如何操作

oracle 如何根据一个表中记录的变动更新另外一个表中相应的字段

如何在oracle中查询每个表的记录条数

如何在oracle中查询每个表的记录条数