欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

ORA-12986错误解决

程序员文章站 2024-01-05 11:15:58
...

今天在删除一个大表的列,意外被DBA重启DB后,再执行查询时,就报了ORA-12986这个错误,先来一起了解下这个错误:ORA-12986: col

今天在删除一个大表的列,意外被DBA重启DB后,再执行查询时,就报了ORA-12986这个错误,先来一起了解下这个错误:

ORA-12986: columns in partially dropped state. Submit ALTER TABLE DROP COLUMNS CONTINUE

Cause: An attempt was made to access a table with columns in partially dropped state (i.e., drop column operation was interrupted).

Action: Submit ALTER TABLE DROP COLUMNS CONTINUE to complete the drop column operation before accessing the table.

可以看到导致这个错误的原因是因为你正在删除列,但是删除到一半时,,进程被意外终止了,导致表处在部分删除状态,所以报了咋么个错误,你要做的就是继续删除,看下下面的例子:

1.将列置为unused

ALTER TABLE test1 SET UNUSED COLUMN Tablespace_name;

2.删除unused列

ALTER TABLE test1 DROP UNUSED COLUMN CHECKPOINT 5;

在未执行完毕前,用 shutdown abort强制关闭数据库(如果用shutdown immediate就看不到效果,它会等到执行完毕才会关闭数据库)

3.重新启动数据库,查看test1表,报错

ORA-12986错误解决

4.继续删除未删完的列

ALTER TABLE test1 DROP COLUMNS continue

5.执行完毕后再次查询test1表,就OK了

相关阅读:

ORA-01172、ORA-01151错误处理

ORA-00600 [2662]错误解决

ORA-01078 和 LRM-00109 报错解决方法

ORA-00471 处理方法笔记

ORA-00314,redolog 损坏,或丢失处理方法

ORA-00257 归档日志过大导致无法存储的解决办法