sql >> Database teknologi >  >> RDS >> PostgreSQL

Bind array-param til indbygget forespørgsel

Udelad array[...] fra din SQL:

WHERE CAST(:commoditySpecIds AS BIGINT[])

og send derefter listen over ID'er som en streng, der ser sådan ud:

"{1,2,3,4}"

Standarden toString() for Lists returnerer normalt noget som:"[1,2,3]" , så du kunne gøre noget som dette:

String literal = commoditySpecsIds.toString();
literal = "{" + literal.substring(1,literal.length() - 1) + "};

og send det derefter til dit sløringslag:

setParameter("commoditySpecIds", literal)


  1. Python:bruge mysqldb til at importere en MySQL-tabel som en ordbog?

  2. Hvordan opdager man forespørgsel, der holder låsen i Postgres?

  3. Enkelt citat, dobbelt citat og backticks i MySQL-forespørgsler

  4. Oracle:flere tabelopdateringer => ORA-01779:kan ikke ændre en kolonne, der er knyttet til en ikke-nøglebevaret tabel