一个专注于大数据技术架构与应用分享的技术博客

db2 reorg table 报错:SQL2220w The compression directory was not built for one or more data objects. SQLSTATE=01H52

在DB2数据库执行如下reorg table语句时报错:

db2 reorg table table_name;

看似很简单的一个语句,但执行时报错:

SQL2220w The compression directory was not built for one or more data objects. SQLSTATE=01H52

处理步骤:

(1)、检查表是否可访问

select * from table_name;

如上语句可执行成功,表明表的访问没有问题。

(2)、鉴于基于这张表,创建了一个视图。为避免视图对reorg table的影响,将视图DROP。

但执行reorg table语句时,仍然报错。

(3)、因为表是当天刚建的,且做了load null的操作,可能会对表的状态有影响。

将表删除,然后重建表、重建视图。再次执行reorg table语句成功。

db2数据库在使用时,表的状态非常敏感,经常不知道因为某一步操作,导致表状态异常,而作为开发人员,通常没有有效的手段去解决。可能DROP TABLE只能作为最后一个杀手锏。但如果表中的数据没有备份,而表又无法正常访问,这个方法就无使用,只能求救于DBA。

赞(0)
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《db2 reorg table 报错:SQL2220w The compression directory was not built for one or more data objects. SQLSTATE=01H52》
文章链接:https://macsishu.com/db2-reorg-table-%e6%8a%a5%e9%94%99%ef%bc%9asql2220w-the-compression-directory-was-not-built-for-one-or-more-data-objects-sqlstate01h52
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。