42P02: undefined_parameter
PostgreSQL¿Qué significa?
La consulta hace referencia a un parámetro que no existe. PostgreSQL informa de que el parámetro posicional referenciado (p. ej., $2) no está definido. Pertenece a la Class 42 (syntax_error_or_access_rule_violation).
¿Por qué ocurre?
Referenciar más parámetros de los suministrados en una sentencia preparada con PREPARE (p. ej., enviar dos parámetros y usar $3); numeración de parámetros con saltos; o índices $N incorrectos en SQL concatenado dinámicamente.
Cómo solucionarlo
Asegúrese de que los números de parámetro coincidan con la cantidad de valores que suministra; verifique que empiecen en $1 y continúen sin huecos. Defina completamente los tipos de parámetros en la sentencia PREPARE: PREPARE p(int, text) AS SELECT ... WHERE a=$1 AND b=$2; Si usa un ORM/driver, compare el número de parámetros vinculados con los marcadores de la consulta.