1. 程式人生 > >oracle關於批量修改表空間的方法

oracle關於批量修改表空間的方法

單獨修改表空間的語句:

alter table 表名 move tablespace PMS_TB

批量修改的語句:

DECLARE

  i_count INT := 0;
  CURSOR c_mysql IS
    SELECT 'alter table ' || table_name || ' move tablespace PMS_TB' mysql
      FROM user_tables
     WHERE tablespace_name = 'SCF_TB' ;
BEGIN
  FOR r_mysql IN c_mysql LOOP
    DBMS_OUTPUT.put_line(r_mysql.mysql);
    EXECUTE IMMEDIATE r_mysql.mysql;
    i_count := i_count + 1;
  END LOOP;
  DBMS_OUTPUT.put_line('i_count: ' || i_count);
END;