O problema está em
$1 IS NULL
, onde $1
é tratado como um nome de coluna dinâmico, o que não é permitido em instruções preparadas, devido às proteções contra injeção de SQL implementadas pelo servidor de banco de dados. ATUALIZAÇÃO
Se você deseja formatar suas consultas livremente, sem o risco de uma injeção de SQL, confira pg-promessa . E para formatar corretamente os nomes de esquema, tabela ou coluna, consulte Nomes SQL .