DB2表暂挂的原因及解决办法

数据库
在使用DB2数据库时,查询一个表的数据,SQL为:select * from db2admin.AlarmTarget,此时报错,错误号为:SQL0668N   SQL0668N 不允许对表 "<表名>" 执行操作,限制对表 "<表名>" 的访问。本文将为您分析表暂挂的原因及解决办法。

在使用DB2数据库时,查询一个表的数据,SQL为:select * from db2admin.AlarmTarget,此时报错,错误号为:SQL0668N   SQL0668N 不允许对表 "<表名>" 执行操作,限制对表 "<表名>" 的访问。本文将为您分析表暂挂的原因及解决办法。

原因基于下列: 

1 该表处于“设置完整性暂挂无访问”状态。未强制表的完整性并且表的内容可能是无效的。如果从基础表执行的操作也可能会接收到此错误。

2 表处于“无数据移动”状态。当处于此状态时,禁止导致数据移动的操作。数据移动操作包括REDISTRIBUTE、数据库分区键的更新、多维集群键的更新、范围集群键的更新、数据分区键的更新和 REORG TABLE。

3 表处于“装入暂挂”状态。对此表的先前的 LOAD尝试失败。在重新启动或终止 LOAD操作之前不允许对表进行访问。

4 表处于“读访问”状态。此状态可以在联机装入(LOAD)处理(带有 READ ACCESS 选项的 LOAD INSERT)期间发生,或在联机装入(LOAD)操作后发生,除了在使用SET INTEGRITY   

5 表处于“正在装入”状态。LOAD 实用程序当前对此表进行操作,直到 LOAD完成才允许访问。

6 不能在 ESE 中刷新引用昵称的具体化查询表。

7 表处于“REORG 暂挂”状态。在执行包含 REORG 建议的操作的 ALTER TABLE语句后,可能会发生这种情况。

8 表处于“改变暂挂”状态。当在包含 REORG 建议的操作的 ALTER TABLE语句所在工作单元中使用该表时,就可能会发生这种情况。#p#

解决方法

1 对表 "<表名>" 执行带有 IMMEDIATE CHECKED 选项的SETINTEGRITY 语句,以使表脱离“设置完整性暂挂无访问” 状态。对于用户维护的具体化查询表,执行带有IMMEDIATE UNCHECKED选项的语句,而不是带 IMMEDIATECHECKED选项。

2 对表 "<表名>"的从属立即具体化查询表和登台表执行 REFRESH TABLE语句。可以通过先前的 LOAD INSERT 操作根据"<表名>" 的追加数据以及通过先前带有 ATTACH子句的 ALTER TABLE 语句根据 "<表名>"   

3 通过分别发出带有 RESTART 或 TERMINATER 选项的LOAD来重新启动或终止先前失败的对此表的 LOAD 操作。

4 发出 LOAD QUERY
命令以检查该表是否正在装入。如果是,则一直等到 LOAD 实用程序完成,或如有必要,重新启动或终止先前失败的“装入”操作。如果当前未在进行LOAD,则发出带有 IMMEDIATE CHECKED 选项的 SET INTEGRITY语句以验证表的新装入部分中的约束。

5 一直等到当前 LOAD 操作完成。可用使用 LOAD QUERY命令来监视装入的进度。

6 使用 MAINTAIN BY USER
选项定义具体化查询表。然后,使用带有子查询的INSERT 语句填充具体化查询表。

7 使用 REORG TABLE命令重组表(注意,不允许对处于“REORG暂挂”状态的表执行 INPLACE REORG TABLE)。

8 完成该工作单元,然后重新发出该命令。
sqlcode : -668
sqlstate : 57007   解决方案:
在服务器端CLP执行下列命令即可:
SET INTEGRITY FOR DB2ADMIN.ALARMTARGET IMMEDIATE CHECKED
说明:如果表处于"设置完整性暂挂"的状态,那么就需要尽快处理,否则该表不能进行 Select、Update、Delete 等操作。

责任编辑:段燃 来源: 互联网
相关推荐

2009-05-31 09:53:38

DB2故障处理错误码

2010-08-25 11:19:23

DB2数据库

2015-03-09 15:41:08

MongoDB查询超时异常Socket Time

2017-06-21 08:30:20

MySQL原因解决办法

2010-11-03 15:49:32

DB2删除表

2015-10-15 09:38:21

程序员发福

2009-11-30 10:09:31

PHP中文乱码

2023-06-20 11:46:58

2010-11-01 12:11:43

DB2表空间

2010-11-01 11:13:57

DB2表管理

2010-11-01 16:07:22

DB2表空间

2019-08-29 14:29:42

JVM内存 Java

2010-11-02 16:02:59

db2表空间

2010-11-03 09:34:39

DB2临时表

2010-11-01 16:38:13

DB2表空间

2010-11-02 14:45:12

DB2创建表空间

2010-11-01 16:44:43

DB2表空间

2014-12-18 13:39:16

CloudStack虚拟机云计算平台

2010-09-30 10:45:28

DB2列的修改

2011-10-17 14:41:26

激光打印机解决办法
点赞
收藏

51CTO技术栈公众号