Su declaración preparada emite full_address
en text
(tipo de texto incorporado de Postgres), mientras que parece que su tabla se crea con un citext
(sin distinción entre mayúsculas y minúsculas) tipo de texto (o le falta un índice en full_address::text
). Tal vez intente crear un índice en full_address::text
y vea si su declaración preparada lo recogerá.
Otra opción es usar un text
escriba para la full_address
y luego crea un índice funcional en lower(full_address)
-- la palatabilidad de esa opción depende de cuáles sean sus requisitos.
Creo que parte del problema es que JDBC no conoce el citext
escríbalo a menos que pueda hacer que JDBC envíe su dirección a la base de datos como citext
type, el planificador de consultas lo interpretará como text
, al igual que su setString()
el método probablemente lo haga.
Curiosamente, me encontré con un problema similar recientemente
Divulgación:trabajo para EnterpriseDB (EDB)