oracle14155错误,Error : ORA-14155: missing PARTITION, PARTITIONS, SUBPARTITION, or SUBPARTITIONS keywo...

2017-11-01 11:54:42

0

I m trying to rename columns dynamically in Oracle.

I have a table whose column is named on month names, every month I need to refresh the data and change column names accordingly.

DECLARE

v_cur_month_name VARCHAR2(100);

i INT := 0;

vsql VARCHAR2(250);

BEGIN

FOR my_tab IN (WITH month_counter AS

(SELECT column_name, rownum AS cnt

FROM all_tab_columns

WHERE lower(owner) = 'ppl'

AND lower(table_name) = 'test')

SELECT column_name AS MONTH, cnt FROM month_counter WHERE rownum <= 12) LOOP

v_cur_month_name := to_char(to_date(extract(MONTH FROM to_date(to_char(add_months(SYSDATE, i), 'YYYY-MM-DD'), 'YYYY-MM-DD')), 'MM'), 'MONTH');

vsql := 'alter table ppl.test rename column' || my_tab.month || 'TO' || v_cur_month_name;

EXECUTE IMMEDIATE vsql;

i := i + 1;

END LOOP;

END;

For this: i am getting error as:

ORA-14155: missing PARTITION, PARTITIONS, SUBPARTITION, or SUBPARTITIONS keyword

ORA-06512: at line 20

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值