当前位置: 代码迷 >> Oracle管理 >> 怎么实现自动插入可变字段名
  详细解决方案

怎么实现自动插入可变字段名

热度:3   发布时间:2016-04-24 05:49:46.0
如何实现自动插入可变字段名
SQL code
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;


上面代码无法正常执行,从上面可以看出我的需求,就是想每天向aaaa自动插入一新列,列名称是变化的,能不能实现啊?


------解决方案--------------------
每天自动增加一列,lz好想法,这是什么业务逻辑,很夸张的说
SQL code
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))';
  相关解决方案