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

23502

PostgreSQL 23502 en base de datos: falta un valor obligatorio

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

Precaución

Actúa con cuidado; puede requerir técnico si persiste.

Urgencia

Media — atiéndelo hoy

Respuesta rápida

Se intentó guardar un registro sin un dato que la tabla exige. Revisa qué campo quedó vacío en el formulario; si eres desarrollador, usa los campos Table y Column del error para ver qué columna NOT NULL recibió un nulo.

Seguridad primero

Antes de continuar

  • No quites la restricción NOT NULL ni metas valores de relleno para que el registro entre: la base aceptaría datos incompletos. Si no conoces el dato, detente y consulta al responsable.

Puedes hacerlo con seguridad

  • Campos vacíos en el formulario
  • Columna indicada por el error
  • Valor por defecto de la columna

Deja estas tareas a un profesional cualificado

  • No intentes esta tarea profesional: Corrección de la sentencia o del formulario
  • No intentes esta tarea profesional: Revisión del diseño de la columna

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. Corrección de la sentencia o del formulario

    Qué haceEl desarrollador hace que la aplicación envíe el dato obligatorio o valide el campo antes de guardar.

    Te tiene que enseñarla sentencia que fallaba y la corregida.

    Por escritoel cambio y la prueba con el caso original.

  2. Revisión del diseño de la columna

    Qué haceEl DBA valora si la columna necesita un DEFAULT razonable, con acuerdo del responsable del dato.

    Te tiene que enseñarla definición actual.

    Por escritoel cambio de esquema aprobado.

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. Campos vacíos en el formulario

    Sin herramientas especiales

    Quién:
    tú, quien usa la aplicación.
    Cómo:
    revisa qué campos dejaste sin rellenar y complétalos si los conoces.
    Resultado que importa:
    si al rellenarlos se guarda.
    Si se guarda:
    confirma que faltaba un dato obligatorio.
    Si no hay campo que rellenar:
    indica un fallo de la aplicación; avisa al soporte.
    Evidencia a conservar:
    captura del formulario y del mensaje con la hora.

    Evidencia: PostgreSQL 18 Appendix A: Error Codes

  2. Columna indicada por el error

    Sin herramientas especiales

    Quién:
    tú, como desarrollador.
    Cómo:
    lee los campos Schema, Table y Column del error.
    Resultado que importa:
    qué columna NOT NULL recibió el nulo.
    Si la sentencia envía esa columna con nulo:
    confirma un dato que falta en la entrada.
    Si la sentencia no la menciona:
    apunta a una columna omitida sin DEFAULT.
    Evidencia a conservar:
    sentencia y nombre de la columna.

    Evidencia: PostgreSQL error and notice fields · PostgreSQL constraints

  3. Valor por defecto de la columna

    Sin herramientas especiales

    Quién:
    tú, como desarrollador, con acceso de solo lectura.
    Cómo:
    revisa la definición de la tabla: si la columna tiene DEFAULT y restricción NOT NULL.
    Resultado que importa:
    si existe un valor por defecto declarado.
    Si no tiene DEFAULT:
    confirma que omitirla equivale a enviar nulo.
    Si tiene DEFAULT y aun así falla:
    indica que la sentencia envía NULL de forma explícita.
    Evidencia a conservar:
    definición de la columna.

    Evidencia: PostgreSQL constraints · PostgreSQL 18 default values

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 23502 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

  • not_null_violation
  • PostgreSQL 23502
  • SQLSTATE 23502

Qué significa

El apéndice A asigna 23502 a not_null_violation, en la clase 23 Integrity Constraint Violation. Una restricción NOT NULL indica que una columna no puede tomar el valor nulo. Si una columna no tiene valor por defecto declarado, su valor por defecto es el nulo, así que omitirla en un INSERT también viola la restricción. Los campos Schema, Table y Column del error identifican la columna. El código señala el dato que falta o la sentencia que no lo envía, no un fallo del servidor ni de la tabla.

Advertencias y condiciones de parada

  • Precauciónadvertencia editorial

    No quites la restricción NOT NULL ni metas valores de relleno para que el registro entre: la base aceptaría datos incompletos. Si no conoces el dato, detente y consulta al responsable.

    Evidencia: PostgreSQL constraints

Síntomas y causas

Causas probables · en orden

  • Campo obligatorio vacío en la entradaFrecuente

    El usuario o el proceso de carga no rellenó un dato. Se confirma porque el valor llega como nulo en la sentencia.

    Evidencia: PostgreSQL 18 Appendix A: Error Codes · PostgreSQL constraints

  • Columna omitida sin valor por defectoPosible

    La sentencia no incluye la columna y esta no tiene DEFAULT, así que recibe el nulo. Se distingue porque el formulario no tiene ese campo.

    Evidencia: PostgreSQL constraints · PostgreSQL 18 default values

Fuentes y referencias técnicas

  1. 1

    PostgreSQL 18 Appendix A: Error Codes

    PostgreSQL Global Development Group · 2026 · official_doc

  2. 2

    PostgreSQL constraints

    PostgreSQL Global Development Group · 2026 · official_doc

Fuentes: PostgreSQL 18 Appendix A: Error Codes · PostgreSQL constraintsrevisado 2026-10-03 · verificado

¿Te ha resultado útil esta ficha?