Referencia técnica independienteSitio oficial
  • Software y sistemas
  • Base de datos

42703

PostgreSQL 42703 en base de datos: la consulta nombra una columna que no existe

Verificada con fuentes2 fuentesRevisada 3 oct 2026
¿Viene un técnico? Mira los 2 pasos que debe enseñarte
Trace

Evidencia vinculada a esta decisión

Ver fuente: PostgreSQL 18 Appendix A: Error Codes

Nivel de riesgo

Seguro

Puedes actuar sin peligro siguiendo las comprobaciones seguras.

Urgencia

Media — atiéndelo hoy

Respuesta rápida

PostgreSQL no encuentra una columna que aparece en tu sentencia. Es un fallo de la consulta o del esquema, no del servidor. Revisa el nombre exacto en la posición que marca el error y compáralo con las columnas reales de la tabla.

Seguridad primero

Antes de continuar

  • No crees una columna vacía solo para que desaparezca el error: oculta el desajuste entre la consulta y el esquema y puede guardar datos en el sitio equivocado.

Puedes hacerlo con seguridad

  • Posición exacta del nombre que falla
  • Columnas reales de la tabla en la base que falla
  • Lo que puede hacer quien solo usa la aplicación

Deja estas tareas a un profesional cualificado

  • No intentes esta tarea profesional: Corregir la consulta o aplicar el cambio de esquema que falta
  • No intentes esta tarea profesional: Revisar el uso de comillas en los identificadores

Lo que un técnico debe poder justificar

Viene un técnico

Estos son los pasos que tiene que hacer y enseñarte. Márcalos mientras trabaja: si se salta pasos, no aceptes el cambio de pieza.

No son instrucciones para que abras o manipules el equipo. Son las comprobaciones que deben sostener una conclusión técnica.

  1. Corregir la consulta o aplicar el cambio de esquema que falta

    Qué haceEl desarrollador ajusta el nombre en la consulta o aplica en esa base la migración que crea la columna, siguiendo el procedimiento del equipo.

    Te tiene que enseñarla definición real de la tabla y la sentencia corregida.

    Por escritoqué se cambió, en qué base y la prueba de que la misma sentencia ya funciona.

  2. Revisar el uso de comillas en los identificadores

    Qué haceEl equipo identifica columnas creadas con comillas y mayúsculas y decide si mantenerlas entrecomilladas en todas las consultas.

    Te tiene que enseñarla lista de columnas afectadas.

    Por escritola convención elegida.

Antes de aceptar una pieza o reparación

Aún no ha demostrado nada. No aceptes un cambio de pieza solo por el código.

Sigue estos pasos

Aviso: Sigue el orden documentado. Un código identifica el sistema afectado, pero por sí solo no demuestra qué pieza está averiada.

  1. Posición exacta del nombre que falla

    Sin herramientas especiales

    Quién:
    tú, como desarrollador.
    Cómo:
    lee el mensaje completo y el campo Position (P) que devuelve tu driver; cuenta los caracteres desde el inicio de la sentencia enviada, empezando en 1.
    Resultado que importa:
    qué identificador hay en esa posición y a qué tabla o alias pertenece.
    Si el nombre lleva mayúsculas o comillas:
    compáralo carácter a carácter con la definición; apunta a un problema de comillas.
    Si el nombre está bien escrito:
    descarta la errata y pasa a comprobar el esquema real.
    Evidencia a conservar:
    sentencia renderizada sin datos personales, valor de Position y nombre señalado.

    Evidencia: PostgreSQL error and notice fields · PostgreSQL 18 lexical structure

  2. Columnas reales de la tabla en la base que falla

    Requiere herramientas

    Quién:
    tú, como desarrollador.
    Cómo:
    conectado a la misma base, esquema y usuario que la aplicación, consulta information_schema.columns filtrando por table_schema y table_name.
    Resultado que importa:
    si la columna aparece y con qué grafía exacta.
    Si no aparece:
    confirma que falta en esta base; revisa qué cambio de esquema no se aplicó aquí.
    Si aparece con otra grafía:
    indica un desajuste de mayúsculas o comillas en la consulta.
    Evidencia a conservar:
    resultado de la consulta con fecha, base y esquema consultados.

    Esta vista solo muestra las columnas a las que tu usuario tiene acceso. Si no tienes permisos de lectura sobre el catálogo, no lo hagas con otra cuenta: pídelo al DBA.

    Evidencia: PostgreSQL 18 lexical structure · PostgreSQL 18 information_schema columns view

  3. Lo que puede hacer quien solo usa la aplicación

    Sin herramientas especiales

    Quién:
    quien usa la aplicación.
    Cómo:
    si ves el código en una pantalla de error, anota la hora, la pantalla y la acción que estabas haciendo, y envíalo al soporte de la aplicación.
    Resultado que importa:
    que el equipo reciba datos para reproducir la consulta.
    Si el error aparece siempre en la misma pantalla:
    indica un fallo fijo de la consulta; reintentar no lo cambia.
    Si solo apareció tras una actualización de la aplicación:
    apunta a un cambio de esquema pendiente en el servidor.
    Evidencia a conservar:
    captura con la hora visible.

    Evidencia: PostgreSQL 18 Appendix A: Error Codes

Situación no resuelta

Si el error persiste, no sigas probando por tu cuenta. Mira qué tiene que hacer y enseñarte el técnico.

Técnico virtual

¿Sigue apareciendo 42703 tras comprobarlo?

Este recorrido usa el código exacto y tus respuestas para elegir una prueba, su resultado esperado y la siguiente bifurcación.

Dónde se aplica este código

Un código solo tiene significado dentro del producto y la versión correctos.

Ámbito principal

Sistema
Software y sistemas
Marca
PostgreSQL
Tipo de producto
Base de datos

Variantes conocidas del código

  • PostgreSQL 42703
  • SQLSTATE 42703
  • undefined_column

Qué significa

El apéndice A asigna 42703 a undefined_column, dentro de la clase 42 (error de sintaxis o de regla de acceso). El analizador no logra resolver un nombre de columna contra las tablas, vistas o alias de la consulta. El campo Position del error indica el carácter donde está la referencia. Los nombres sin comillas se pasan a minúsculas y los entrecomillados distinguen mayúsculas, así que «Precio» con comillas y precio sin ellas son columnas distintas. El código no dice si falta la columna, si está mal escrita o si la consulta apunta a otra tabla.

Advertencias y condiciones de parada

  • Seguroadvertencia editorial

    No crees una columna vacía solo para que desaparezca el error: oculta el desajuste entre la consulta y el esquema y puede guardar datos en el sitio equivocado.

    Evidencia: PostgreSQL 18 Appendix A: Error Codes

Síntomas y causas

Causas probables · en orden

  • Mayúsculas y comillas que no coincidenFrecuente

    La columna se creó entrecomillada con mayúsculas (por ejemplo "Precio") y la consulta la escribe sin comillas, o al revés. PostgreSQL pasa a minúsculas los nombres sin comillas, por eso no la encuentra aunque se vea igual.

    Evidencia: PostgreSQL 18 lexical structure

  • Columna ausente en esa base o versión del esquemaPosible

    La consulta espera una columna que existe en desarrollo pero no en la base donde falla, porque falta un cambio de esquema. Se distingue porque la misma sentencia funciona en otra base.

    Evidencia: PostgreSQL 18 Appendix A: Error Codes · PostgreSQL 18 information_schema columns view

  • Referencia a otra tabla o aliasPosible

    El nombre existe, pero en una tabla distinta de la que indica el alias o el prefijo usado en esa parte de la consulta. Position señala el punto exacto de la referencia.

    Evidencia: PostgreSQL error and notice fields

Fuentes y referencias técnicas

  1. 1

    PostgreSQL 18 Appendix A: Error Codes

    PostgreSQL Global Development Group · 2026 · official_doc

  2. 2

    PostgreSQL error and notice fields

    PostgreSQL Global Development Group · 2026 · official_doc

Fuentes: PostgreSQL 18 Appendix A: Error Codes · PostgreSQL error and notice fieldsrevisado 2026-10-03 · verificado

¿Te ha resultado útil esta ficha?