DBAtlas · Atlas de operações de banco de dados

42P02: undefined_parameter

PostgreSQL

O que significa?

A consulta referencia um parâmetro que não existe. O PostgreSQL informa que o parâmetro posicional referenciado (por exemplo, $2) não está definido. Pertence à Class 42 (syntax_error_or_access_rule_violation).

Por que acontece?

Referenciar mais parâmetros do que os fornecidos em um comando preparado com PREPARE (por exemplo, enviar dois parâmetros e usar $3); numeração de parâmetros com lacunas; ou índices $N errados em SQL concatenado dinamicamente.

Como resolver

Garanta que os números dos parâmetros correspondam à quantidade de valores fornecidos; verifique se começam em $1 e seguem sem lacunas. Defina completamente os tipos dos parâmetros no comando PREPARE: PREPARE p(int, text) AS SELECT ... WHERE a=$1 AND b=$2; Se usar ORM/driver, compare a quantidade de parâmetros vinculados com os placeholders da consulta.

Abrir no DBAtlas →

Mais entradas deste banco