日期:2014-05-17 浏览次数:20762 次
DECLARE v_sum Varchar2(25):='sum '; v_tmp Varchar2(25); BEGIN v_tmp=concat(v_qty,to_char(sysdate,'yymmdd')); Alter Table aaaa Add (v_tmp Number(22,5)) ; END;
DECLARE v_sum Varchar2(25):='sum'; v_tmp Varchar2(25); BEGIN v_tmp:=concat(v_sum,to_char(sysdate,'yymmdd')); execute immediate 'Alter Table aaaa Add (' || v_tmp || ' Number(22,5))'; END;
------解决方案--------------------
execute immediate 'Alter Table aaaa Add('||v_tmp||'Number(22,5))';
注意加空格 在 v_tmp 和 Number之间
--》
execute immediate 'Alter Table aaaa Add( '||v_tmp||' Number(22,5))';