@prisma/adapter-pg
TypeScript icon, indicating that this package has built-in type declarations

5.13.0 • Public • Published

@prisma/adapter-pg

This package contains the driver adapter for Prisma ORM that enables usage of the node-postgres (pg) database driver for PostgreSQL. You can learn more in the documentation.

pg is one of the most popular drivers in the JavaScript ecosystem for PostgreSQL databases. It can be used with any PostgreSQL database that's accessed via TCP.

Note:: Support for the pg driver is available from Prisma versions 5.4.2 and later.

Usage

This section explains how you can use it with Prisma ORM and the @prisma/adapter-pg driver adapter. Be sure that the DATABASE_URL environment variable is set to your PostgreSQL connection string (e.g. in a .env file).

1. Enable the driverAdapters Preview feature flag

Since driver adapters are currently in Preview, you need to enable its feature flag on the datasource block in your Prisma schema:

// schema.prisma
generator client {
  provider        = "prisma-client-js"
  previewFeatures = ["driverAdapters"]
}

datasource db {
  provider = "postgresql"
  url      = env("DATABASE_URL")
}

Once you have added the feature flag to your schema, re-generate Prisma Client:

npx prisma generate

2. Install the dependencies

Next, install the pg package and Prisma ORM's driver adapter:

npm install pg
npm install @prisma/adapter-pg

3. Instantiate Prisma Client using the driver adapter

Finally, when you instantiate Prisma Client, you need to pass an instance of Prisma ORM's driver adapter to the PrismaClient constructor:

import { Pool } from 'pg'
import { PrismaPg } from '@prisma/adapter-pg'
import { PrismaClient } from '@prisma/client'

const connectionString = `${process.env.DATABASE_URL}`

const pool = new Pool({ connectionString })
const adapter = new PrismaPg(pool)
const prisma = new PrismaClient({ adapter })

Feedback

We encourage you to create an issue if you find something missing or run into a bug.

If you have any feedback, leave a comment in this GitHub discussion.

Readme

Keywords

none

Package Sidebar

Install

npm i @prisma/adapter-pg

Weekly Downloads

8,741

Version

5.13.0

License

Apache-2.0

Unpacked Size

46.9 kB

Total Files

7

Last publish

Collaborators

  • miguelff
  • apolanc
  • jkomyno
  • pirix-gh
  • sevinf
  • aqrln
  • luanvdw
  • jasonkuhrt
  • jolg42
  • nilubava
  • janpio
  • prismabot