v11 sqlstate sqlcode error codes sql db2

sqlstate - db2 SQLCODE-668 al insertar



sqlcode 576 (3)

CALL SYSPROC.ADMIN_CMD (''REORG TABLE TABLE_NAME'') resuelve el problema

Mientras estaba insertando datos en una tabla (db2), recibí este error:

Message: Operation not allowed for reason code "7" on table "ELSAG.ICGR1106".. SQLCODE=-668, SQLSTATE=57016, DRIVER=3.50.152,...

cuando lo busqué en Google, encontré que la declaración ALTER TABLE anterior intentó agregar una columna a una tabla que tiene un procedimiento de edición que se define con la sensibilidad del atributo de fila. No se pueden agregar columnas a esta tabla.

¿Hay alguna forma de rectificarlo?

Una vez que suelte y vuelva a crear la tabla, puedo insertarla de nuevo.

Gracias por adelantado.


De acuerdo con esto: SQL0668

Ha realizado alguna modificación en la tabla que requiere un REORG antes de poder actualizar la tabla.

Ejecute la utilidad REORG contra la tabla y debería estar bien.


Para agregar a la respuesta de James y ahorrar tiempo a la gente mirando alrededor, puedes ejecutar

CALL SYSPROC.ADMIN_CMD(''REORG TABLE MY_TABLE_NAME'')

a través de cualquier cliente SQL disponible (es decir, incluso a través de una conexión ODBC o JDBC) para corregir este problema. Sin embargo, la conexión debe estar en modo de confirmación automática y debe tener privilegios de administrador para ejecutar este comando.

Recomiendo leer la documentación en REORG antes de llamarla.