现在不想写JAVA程序 使用了oracle的job方式 
所以想写个存储过程 让job执行的时候去判断一下容量多大了 足够大了就创建个新的数据文件create or replace procedure PRC_CREATE_TABLESPACES is
  MAX_SPACE_ID NUMBER := 0;
  resultstr    number := 0;
  STR_SQL      VARCHAR2(2000);
  space_name   VARCHAR2(1000);
begin  select t.used_percent
    into resultstr
    from dba_tablespace_usage_metrics t
   where t.tablespace_name = 'wlw116';  IF resultstr > 90 then
    select max(d.FILE_ID)
      into MAX_SPACE_ID
      from dba_data_files d
     where d.TABLESPACE_NAME = 'wlw116';
    MAX_SPACE_ID := MAX_SPACE_ID + 1;
    space_name   := 'E:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\wlw116_' ||
                    MAX_SPACE_ID || '.DBF' 
    STR_SQL := 'ALTER TABLESPACE wlw116 ADD DATAFILE ' || space_name ||
                    'SIZE 20480M AUTOEXTEND OFF; ';
    dbms_output.put_line('sql======================' || STR_SQL);
    --EXECUTE IMMEDIATE STR_SQL; 
  end if;
end PRC_CREATE_TABLESPACES;报错:
PROCEDURE TESTUSER.PRC_CREATE_TABLESPACES 编译错误错误:PLS-00103: 出现符号 "STR_SQL"在需要下列之一时:
        * & = - + ; < / > at in
          is mod remainder not rem <an exponent (**)> <> or != or ~= >=
          <= <> and or like LIKE2_ LIKE4_ LIKEC_ between || member
          SUBMULTISET_
       符号 ";" 被替换为 "STR_SQL" 后继续。
行:21
文本:STR_SQL := 'ALTER TABLESPACE wlw116 ADD DATAFILE ' || space_name ||