/****************************/ --表名 个人客户扩展表 --1 C_ASSETFAVOUR 资产投资偏好 --2 C_ACTINVESTFAVOUR 实际风险偏好 --3 C_PRORAISEFAVOUR 产品类型投资偏好 --4 C_ACTPRORAISEFAVOUR 实际产品类型投资偏好 --5 C_PRODUCTFAVOUR 旗下产品偏好 --6 C_ACTPRODUCTFAVOUR 实际旗下产品偏好 --7 C_ACTHONESTY 实际客户忠诚度 --8 C_INVESTPOTENTIAL 客户可投资潜力 --9 C_PHONEFREQUENCY 电话接触频率偏好 --10 C_COMMUNICATEFAVOUR 客户沟通意愿 --11 C_PRESENTFAVOURTYPE 客户礼品偏好 --12 C_PRESENTFAVOURDESC" 客户礼品偏好备注 --13 C_CHILDEDUCATION 子女年龄状况 --14 C_ACTCHILDEDUCATION 推断子女年龄状况 --15 C_CHILDERENSEX子女性别状况 /**************************/ declare TYPE array_colname IS TABLE OF VARCHAR2 (30); --列名称 a_colname array_colname := array_colname (); TYPE array_type IS TABLE OF VARCHAR2 (30); --列类型 a_type array_type := array_type (); icount integer:=0; begin a_colname :=array_colname( 'C_ASSETFAVOUR', 'C_ACTINVESTFAVOUR', 'C_PRORAISEFAVOUR', 'C_ACTPRORAISEFAVOUR', 'C_PRODUCTFAVOUR', 'C_ACTPRODUCTFAVOUR', 'C_HONESTY', 'C_ACTHONESTY', 'C_INVESTPOTENTIAL', 'C_PHONEFREQUENCY', 'C_COMMUNICATEFAVOUR', 'C_PRESENTFAVOURTYPE', 'C_PRESENTFAVOURDESC', 'C_CHILDEDUCATION', 'C_ACTCHILDEDUCATION', 'C_CHILDERENSEX' ); a_type := array_type ( 'char(1)', 'char(1)', 'char(1)', 'char(1)', 'char(1)', 'char(1)', 'char(1)', 'char(1)', 'char(1)', 'char(1)', 'char(1)', 'char(1)', 'varchar2(500)', 'char(1)', 'char(1)', 'char(1)' ); for i in a_colname.first..a_colname.last loop select count(1) into icount from user_tab_cols t where t.TABLE_NAME = upper('tpersonexinfo') and t.COLUMN_NAME = a_colname(i); if icount = 0 then execute immediate 'alter table tpersonexinfo add '||a_colname(i)||' '||a_type(i)||' '; end if; end loop; end;
oracle大表新增字段并赋值,oracle批量新增字段 数据赋值应用
最新推荐文章于 2022-09-21 18:25:14 发布