5

Execute Query and return results

by
Published Aug 4, 2022

Executes an arbitrary query and return the row results

Script postgresql Verified

The script

Submitted by hugo989 Bun
Verified 12 days ago
1
import { type Sql } from "windmill-client@1";
2

3
import { Client } from "pg"
4

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

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

Other submissions
  • Submitted by rossmccrann Deno
    Created 404 days ago
    1
    import {
    2
      type Sql,
    3
    } from "https://deno.land/x/[email protected]/mod.ts";
    4
    
    
    5
    import { Client } from "https://deno.land/x/[email protected]/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
    }
  • Submitted by kungyc337 Python3
    Created 1126 days ago
    1
    #import wmill
    2
    
    
    3
    def main(x: str):
    4
        return x