6
Execute Query and return results
One script reply has been approved by the moderators Verified

Executes an arbitrary query and return the row results

Created by rossmccrann 840 days ago Viewed 21104 times
1
Submitted by rossmccrann Deno
Verified 840 days ago
1
import {
2
  type Sql,
3
} from "https://deno.land/x/windmill@v1.88.1/mod.ts";
4

5
import { Client } from "https://deno.land/x/postgres@v0.17.0/mod.ts"
6

7
type Postgresql = {
8
  host: string;
9
  port: number;
10
  user: string;
11
  dbname: string;
12
  sslmode: string;
13
  password: string;
14
};
15
export async function main(db: Postgresql, query: Sql = "SELECT * FROM demo;") {
16
  if (!query) {
17
    throw Error("Query must not be empty.");
18
  }
19
  const { rows } = await pgClient(db).queryObject(query);
20
  return rows;
21
}
22

23
export function pgClient(db: any) {    
24
  let db2 = {
25
    ...db,
26
    hostname: db.host,
27
    database: db.dbname,
28
    tls: {
29
        enabled: false,
30
    },
31
  }
32
  return new Client(db2)
33
}
Other submissions