viernes, 1 de abril de 2011

DB2 Error SQL20054N

Ejecutando un alter table me da el  siguiente error:

db2 "ALTER TABLE PRG_REC.ESTIMADO_OBJETIVO DROP COLUMN VTA_OBJ_CAMP_FALTA_EXTRANJERA";

Error: 
[db2inst1@ibmdb2test]:/home/db2inst1/1223/REQ1223/rollback$ db2 "ALTER TABLE PRG_REC.ESTIMADO_OBJETIVO DROP COLUMN VTA_OBJ_CAMP_FALTA_EXTRANJERA";
DB21034E  The command was processed as an SQL statement because it was not a
valid Command Line Processor command.  During SQL processing it returned:
SQL20054N  The table "PRG_REC.ESTIMADO_OBJETIVO" is in an invalid state for
the operation.  Reason code="23".  SQLSTATE=55019

Segun IBM la descripcion del error:


SQL20054N: La tabla nombre-tabla está en un estado no válido para la operación. Código de razón=código-razón.

23

Se ha realizado el número máximo de modificaciones recomendadas de REORG. Se permite un máximo de tres modificaciones recomendadas de REORG en una tabla antes de que se deba realizar reorg, para actualizar las filas de tablas de modo que coincidan con el esquema actual.


Solucion: 

#db2 connect to DB_NAME
#db2
#db2 => reorg table PRG_REC.ESTIMADO_OBJETIVO
#db2 => reorg table PRG_REC.ESTIMADO_OBJETIVO
DB20000I  The REORG command completed successfully.