- Software y sistemas
- Base de datos
23502
PostgreSQL 23502 en base de datos: falta un valor obligatorio
Evidencia vinculada a esta decisión
Ver fuente: PostgreSQL 18 Appendix A: Error CodesNivel 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.
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.
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.
Campos vacíos en el formulario
- 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
Columna indicada por el error
- 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
Valor por defecto de la columna
- 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
PostgreSQL 18 Appendix A: Error Codes
PostgreSQL Global Development Group · 2026 · official_doc
- 2
PostgreSQL Global Development Group · 2026 · official_doc
¿Te ha resultado útil esta ficha?