@prisma/adapter-planetscale
v7.5.0
Published
Prisma's driver adapter for "@planetscale/database"
Downloads
101,374
Readme
Prisma driver adapter for PlanetScale serverless driver
Prisma driver adapter for PlanetScale Serverless Driver. Refer to the announcement blog post and our docs for more details.
Note:: Support for PlanetScale's serverless driver is available from Prisma versions 5.4.2 and later.
PlanetScale's serverless driver provides a way of communicating with your PlanetScale database over HTTP which can improve connection reliability and performance
Getting started
Note: Ensure you update the host value in your connection string to
aws.connect.psdb.cloud. You can learn more about this here.DATABASE_URL="mysql://user:[email protected]/database_name?sslaccept=strict"
To get started, install the Prisma adapter for PlanetScale and undici packages:
npm install @prisma/adapter-planetscale
npm install undiciNote: When using a Node.js version below 18, you must provide a custom fetch function implementation. We recommend the
undicipackage on which Node's built-in fetch is based. Node.js versions 18 and later include a built-in globalfetchfunction, so you don't have to install an extra package.
Update your Prisma Client instance to use the PlanetsScale serverless driver:
// Import needed packages
import { PrismaPlanetScale } from '@prisma/adapter-planetscale'
import { PrismaClient } from '@prisma/client'
import { fetch as undiciFetch } from 'undici'
// Setup
const connectionString = `${process.env.DATABASE_URL}`
// Init prisma client
const adapter = new PrismaPlanetScale({ url: connectionString, fetch: undiciFetch })
const prisma = new PrismaClient({ adapter })
// Use Prisma Client as normalYou can now use Prisma Client as you normally would with full type-safety. Your Prisma Client instance now uses PlanetScale's serverless driver to connect to your database.
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.
