错误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; |