通过bat文件,一键删除oracle里面某用户下的所有表的数据?只删除数据,结构还是要保存的?

如题所述

写一个存储过程
读取用户下所有的表
select * from user_tables t
然后逐个表 truncate ;

建 批处理文件
调用这个过程 ,命令可以这样写
sqlplus %p_user%/%p_password%@%p_sid% @"%~dp0generate_drop_table_sql.sql"

登录数据库,执行当前路径下 generate_drop_table_sql.sql 这个文件追问

我是菜鸟,还请问一下,怎样写存储过程读取用户下所有表

追答

select * from user_tables t

追问

大神,我还想问一下,调用存储过程我访问的是远程地址,那该怎么写

追答

%p_user%/%p_password%@%p_sid%

p_user 数据库用户名 p_password 密码 p_sid 本地设置的服务名

温馨提示:答案为网友推荐,仅供参考