Oracle压缩表修改字段的处理方法

今天在修改表,往表里面添加了几个字段,一时疏忽将字段类型搞错了。

于是,试了以下几种方法

1、尝试用最传统的sql修改字段类型:

alter table table_name modify column_name column_type;

由于数据仓库中该表的数据特别大(一年的数据,每天有上千万条记录),sql语句执行了好几分钟,都没有出结果。网上搜索了一下modify column大数据会记录redo和undo。为了不对数据仓库造成影响,所以只好停掉该sql。

2、尝试删除字段,再重建,结果出现ORA-39726错误

最后网上找了一下,使用

ALTER TABLE test SET UNUSED COLUMN ROUTERADDR;

语句将字段设置成unused,最后再重新创建需要修改的表字段。


由于该方法只是将字段设置成unused,看不到字段,但是在数据字典中,该字段还是存在的。没有深入研究怎么删除oracle数据字典,如有朋友对这方面有研究,请指教。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值