DBAtlas · Atlas de operaciones de bases de datos

ORA-01466: unable to read data - table definition has changed (no se pueden leer los datos; la definición de la tabla ha cambiado)

Oracle

¿Qué significa?

Una consulta que lee datos de un momento pasado (Flashback Query, AS OF o lectura consistente) falló porque la definición de la tabla (DDL) cambió entre el momento pasado consultado y ahora. Oracle no puede leer de forma segura los datos de ese momento con la definición actual.

¿Por qué ocurre?

Se aplicó un DDL (añadir/eliminar una columna, cambio de tipo) a la tabla después de la marca de tiempo a la que apunta la consulta Flashback/AS OF. Además, las diferencias de reloj entre cliente y servidor o las consultas de un pasado muy reciente (unos segundos) pueden generar este error por la resolución SCN/tiempo.

Cómo solucionarlo

Ejecute la consulta flashback contra un momento/SCN anterior al cambio DDL de la tabla. Siempre que sea posible, use un SCN exacto en lugar de una marca de tiempo (AS OF SCN). Para consultas de un pasado muy reciente, retroceda unos segundos. Si se necesita acceso histórico permanente, considere un diseño de versionado o una tabla de archivo en lugar de DDL.

Abrir en DBAtlas →

Más entradas de este motor