prisma-database-setup

Step-by-step configuration guides for Prisma ORM across PostgreSQL, MySQL, SQLite, MongoDB, SQL Server, CockroachDB, and Prisma Postgres. Covers datasource configuration, driver adapter selection, and Prisma Client instantiation for seven database providers Prisma v7 requires explicit driver adapters (e.g., @prisma/adapter-pg for PostgreSQL) and a prisma.config.ts file for connection URLs Includes quick-reference schema blocks and prerequisite checks (Node.js 20.19.0+, TypeScript 5.4.0+) MongoDB support limited to Prisma v6; v7 users must upgrade or use an alternative provider Provides troubleshooting guidance for connection strings, environment variables, and database-specific feature setup

INSTALLATION
npx skills add https://github.com/prisma/skills --skill prisma-database-setup
Run in your project or agent environment. Adjust flags if your CLI version differs.

SKILL.md

Prisma Database Setup

Comprehensive guides for configuring Prisma ORM with various database providers.

When to Apply

Reference this skill when:

  • Initializing a new Prisma project
  • Switching database providers
  • Configuring connection strings and environment variables
  • Troubleshooting database connection issues
  • Setting up database-specific features
  • Generating and instantiating Prisma Client

Rule Categories by Priority

Priority

Category

Impact

Prefix

1

Provider Guides

CRITICAL

provider names

2

Prisma Postgres

HIGH

prisma-postgres

3

Client Setup

CRITICAL

prisma-client-setup

System Prerequisites

  • Node.js 20.19.0+
  • TypeScript 5.4.0+

Bun Runtime

If you're using Bun, run Prisma CLI commands with bunx --bun prisma ... so Prisma uses the Bun runtime instead of falling back to Node.js.

Supported Databases

Database

Provider String

Notes

PostgreSQL

postgresql

Default, full feature support

MySQL

mysql

Widespread support, some JSON diffs

SQLite

sqlite

Local file-based, no enum/scalar lists

MongoDB

mongodb

Mongo-specific workflow; do not apply SQL driver-adapter guidance

SQL Server

sqlserver

Microsoft ecosystem

CockroachDB

cockroachdb

Distributed SQL, Postgres-compatible

Prisma Postgres

postgresql

Managed serverless database

Configuration Files

Your configuration shape depends on the provider and Prisma major version:

  • All providers use **prisma/schema.prisma**.
  • Prisma 7 SQL setups typically use **prisma.config.ts** for datasource URLs.
  • MongoDB projects should stay on Prisma 6.x, keep url = env("DATABASE_URL") in the schema, and continue using the classic MongoDB setup.

Driver Adapters

The standard SQL workflow uses a driver adapter. Choose the adapter and driver for your database and pass the adapter to PrismaClient.

Database

Adapter

JS Driver

PostgreSQL

@prisma/adapter-pg

pg

CockroachDB

@prisma/adapter-pg

pg

Prisma Postgres (Node.js)

@prisma/adapter-pg

pg

Prisma Postgres (edge/serverless)

@prisma/adapter-ppg

@prisma/ppg

MySQL / MariaDB

@prisma/adapter-mariadb

mariadb

SQLite

@prisma/adapter-better-sqlite3

better-sqlite3

SQLite (Turso/LibSQL)

@prisma/adapter-libsql

@libsql/client

SQL Server

@prisma/adapter-mssql

node-mssql

MongoDB should not follow the Prisma 7 SQL adapter workflow. Use the latest Prisma 6.x release for MongoDB projects and do not install a SQL @prisma/adapter-* package for it.

Example (PostgreSQL):

import 'dotenv/config'

import { PrismaClient } from '../generated/client'

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

const adapter = new PrismaPg({ connectionString: process.env.DATABASE_URL })

const prisma = new PrismaClient({ adapter })

Prisma Client Setup (Required)

Prisma Client must be installed and generated for any database.

-

Install Prisma CLI and Prisma Client:

npm install prisma --save-dev

npm install @prisma/client

-

Add a generator block (prisma-client requires an explicit output path):

generator client {

  provider = "prisma-client"

  output   = "../generated"

}

-

Generate Prisma Client:

npx prisma generate

-

For SQL providers, instantiate Prisma Client with the database-specific driver adapter:

import { PrismaClient } from '../generated/client'

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

const adapter = new PrismaPg({ connectionString: process.env.DATABASE_URL })

const prisma = new PrismaClient({ adapter })

-

Re-run prisma generate after every schema change.

Quick Reference

PostgreSQL

datasource db {

  provider = "postgresql"

}

generator client {

  provider = "prisma-client"

  output   = "../generated"

}

MySQL

datasource db {

  provider = "mysql"

}

generator client {

  provider = "prisma-client"

  output   = "../generated"

}

SQLite

datasource db {

  provider = "sqlite"

}

generator client {

  provider = "prisma-client"

  output   = "../generated"

}

MongoDB

datasource db {

  provider = "mongodb"

  url      = env("DATABASE_URL")

}

generator client {

  provider = "prisma-client-js"

}

For MongoDB, stay on the latest Prisma 6.x line and keep the connection URL in schema.prisma. Do not move a MongoDB project to the Prisma 7 SQL adapter setup.

Rule Files

See individual rule files for detailed setup instructions:

references/postgresql.md

references/mysql.md

references/sqlite.md

references/mongodb.md

references/sqlserver.md

references/cockroachdb.md

references/prisma-postgres.md

references/prisma-client-setup.md

How to Use

Choose the provider reference file for your database, then apply references/prisma-client-setup.md to complete client generation and adapter setup. For MongoDB, use references/mongodb.md instead of copying the SQL adapter examples or Prisma 7 config pattern.

BrowserAct

Let your agent run on any real-world website

Bypass CAPTCHA & anti-bot for free. Start local, scale to cloud.

Explore BrowserAct Skills →

Stop writing automation&scrapers

Install the CLI. Run your first Skill in 30 seconds. Scale when you're ready.

Start free
free · no credit card