kysely
    Preparing search index...

    Interface PostgresDialectConfig

    Config for the PostgreSQL dialect.

    interface PostgresDialectConfig {
        controlClient?: PostgresClientConstructor;
        cursor?: PostgresCursorConstructor;
        onCreateConnection?: (
            connection: DatabaseConnection,
            options?: AbortableOperationOptions,
        ) => Promise<void>;
        onReserveConnection?: (
            connection: DatabaseConnection,
            options?: AbortableOperationOptions,
        ) => Promise<void>;
        pool:
            | PostgresPool
            | ((options?: AbortableOperationOptions) => Promise<PostgresPool>);
    }
    Index

    Properties

    A pg Client constructor, to be used for connecting to the database outside of the pool to avoid waiting for an idle connection.

    This is useful for cancelling queries on the database side.

    Defaults to the Pool's undocumented Client member, if it exists.

    https://github.com/brianc/node-postgres/tree/master/packages/pg-cursor

    import { PostgresDialect } from 'kysely'
    import { Pool } from 'pg'
    import Cursor from 'pg-cursor'
    // or import * as Cursor from 'pg-cursor'

    new PostgresDialect({
    cursor: Cursor,
    pool: new Pool('postgres://localhost:5432/mydb')
    })
    onCreateConnection?: (
        connection: DatabaseConnection,
        options?: AbortableOperationOptions,
    ) => Promise<void>

    Called once for each created connection.

    onReserveConnection?: (
        connection: DatabaseConnection,
        options?: AbortableOperationOptions,
    ) => Promise<void>

    Called every time a connection is acquired from the pool.

    pool:
        | PostgresPool
        | ((options?: AbortableOperationOptions) => Promise<PostgresPool>)

    A postgres Pool instance or a function that returns one.

    If a function is provided, it's called once when the first query is executed.

    Once the driver has initialized, Kysely.destroy calls pool.end(), whether the pool is supplied directly or returned by a function. If initialization hasn't started, db.destroy() does nothing, even if the supplied pool has been used outside Kysely.

    If Kysely is not the sole consumer of the pool, or the pool's lifecycle is managed elsewhere, skip db.destroy(). Let the application call pool.end() once all consumers, including Kysely, have finished. No separate cleanup of the Kysely instance is needed.

    https://node-postgres.com/apis/pool