8
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 620 days ago Viewed 13870 times
1
Submitted by rossmccrann Deno
Verified 620 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