|   错误sql Operation not allowed for reason code "1" on table "MARKET.PURE_USER".. SQLC  
 //执行sql
select * from PURE_USER
    可能有一行或多行违反了对数据定义的约束。此表不能用于操作。若从属表处于检查暂挂状态,则对不处于检查暂挂
 状态的父表的操作也可能接收到此错误。
 
 用户响应: 执行带有 IMMEDIATE CHECKED 选项的 SET INTEGRITY
 语句,并确保数据符合对该表或从属于它的表定义的所有约束。
  
 //解决:
set integrity for 表名 immediate checked
    对表进行任何操作都不被允许,提示SQLSTATE=57016 SQLCODE=-668 ,原因码 "7"的错误:SQL0668N Operation not allowed for reason code "7" on table XXX. 解决方法为:  
 //执行 
CALL SYSPROC.ADMIN_CMD('reorg table 表名')   参考原文为:Operation not allowed for reason code reason-code on table table-name.
 Explanation: Access to table table-name is restricted. The cause is based on the following reason codes reason-code: 7
 The table is in the reorg pending state. This can occur after an ALTER TABLE statement containing a REORG-recommended operation.7
 Reorganize the table using the REORG TABLE command (note that INPLACE REORG TABLE is not allowed for a table that is in the reorg pending state).
 其中:
 reorg table <tablename> 通过重构行来消除“碎片”数据并压缩信息,对表进行重组。
 runstats on table <tbschema>.<tbname> 收集表 <tbname> 的统计信息。
 reorgchk on table all 确定是否需要对表进行重组,对于对所有表自动执行 runstats 很有用。
 >>> reorg 和runstats 都是单个表优化,初始化的命令:
 runstats on table administrator.test;
 reorg table administrator.test;
 |