问题如下:  使用spool输出一个sql脚本,将当前用户下所有以a001开头的表重命名为以a002开头,即替换表名中的a001为a002。请各位大侠赐教! 另:现在就写了个查询出当前用户下所有表名的sql脚本 如下:set trimspool on 
  set linesize 120 
  set pagesize 2000 
  set newpage 1 
  set heading off 
  set term off 
  spool c:\drop_tables.sql
  SELECT 'DROP TABLE '|| table_name ||';' from user_tables;
  spool off 执行结果如下:
DROP TABLE A001ABCD;
DROP TABLE A001ABCDE;
DROP TABLE A001ABCDEF;
DROP TABLE A001ABCDEFG;先谢谢了!

解决方案 »

  1.   

    执行脚本,把结果拷出来运行就可以了。select 'drop table ' || t.tablename || ';' from user_all_tables t where t.tablename like 'A001%' and t.user='当前用户';列名记不清楚了,不知道对不。
      

  2.   

    select 'rename '|| table_name || ' to ' || replace(table_name,'A001','A002') ||';' 
    from user_tables  where table_name like 'A001%'