oracle如何清空一个用户下的所有表中的数据?

zzyhost 2016-06-22 08:28:11
不删表,只清空这个用户下的所有表中的数据,sql咋写呀?
...全文
7201 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
嘚嗒搬运工 2016-07-01
  • 打赏
  • 举报
回复
Select 'Truncate Table USER.' || Table_Name || ''
  From Dba_Tables
 Where Owner = 'USER';
Renkey 2016-07-01
  • 打赏
  • 举报
回复
要删除哪个用户的table,就用那个用户进入sqlplus select "truncate table "|| table_name from user_tables; 导出到一个文件里边,然后执行就可以了。 大概这样的意思。
jienqiuqiu 2016-06-29
  • 打赏
  • 举报
回复
使用plsql登陆需要删除数据表用户,然后执行如下sql语句:
select 'drop table '||table_name||';' from cat where table_type='TABLE'
  • 打赏
  • 举报
回复
为什么不truncate? 另外,需要注意主外键关系 其实我觉得好点的方法,导出来结构,然后drop用户,创建用户,重新导入结构 干净而且没有依赖关系问题
卖水果的net 2016-06-22
  • 打赏
  • 举报
回复
-- 大概 这个样子,如果没有 FK 的话,一下子就都删掉了。
begin
for x in (select table_name from user_tables) loop
execute immediate 'delete ' || x.table_name ; 
end loop ; 
end ;

17,378

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧