Support Set as bind parameter
tv42 opened this issue · 1 comments
tv42 commented
Is your feature request related to a problem? Please describe.
I tried to pass a Set
as a bind parameter, expecting it to behave like Array
. It was hard to debug since the query gave wrong results, not an error.
Describe the solution you'd like
Support Set
just like Array
: convert it to a Postgres array.
Additional context
Set:
$ deno eval 'import { Client } from "https://deno.land/x/postgres@v0.19.3/mod.ts"; const client = new Client({}); await client.connect(); const odds = new Set([1,3,5]); const result = await client.queryObject`SELECT 3=ANY(${odds}) AS should_be_true`; console.log(result.rows);'
[ { should_be_true: false } ]
Array:
$ deno eval 'import { Client } from "https://deno.land/x/postgres@v0.19.3/mod.ts"; const client = new Client({}); await client.connect(); const odds = new Array([1,3,5]); const result = await client.queryObject`SELECT 3=ANY(${odds}) AS should_be_true`; console.log(result.rows);'
[ { should_be_true: true } ]