Awesome-omni-skill prisma-database-setup
Guides for configuring Prisma with different database providers (PostgreSQL, MySQL, SQLite, MongoDB, etc.). Use when setting up a new project, changing databases, or troubleshooting connection issues. Triggers on "configure postgres", "connect to mysql", "setup mongodb", "sqlite setup".
git clone https://github.com/diegosouzapw/awesome-omni-skill
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/development/prisma-database-setup-huynhsang2005" ~/.claude/skills/diegosouzapw-awesome-omni-skill-prisma-database-setup-68a824 && rm -rf "$T"
skills/development/prisma-database-setup-huynhsang2005/SKILL.mdPrisma 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 | |
| 3 | Client Setup | CRITICAL | |
System Prerequisites (Prisma ORM 7)
- 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 | | Default, full feature support |
| MySQL | | Widespread support, some JSON diffs |
| SQLite | | Local file-based, no enum/scalar lists |
| MongoDB | | NOT SUPPORTED IN v7 (Use v6) |
| SQL Server | | Microsoft ecosystem |
| CockroachDB | | Distributed SQL, Postgres-compatible |
| Prisma Postgres | | Managed serverless database |
Configuration Files
Prisma v7 uses two main files for configuration:
: Defines theprisma/schema.prisma
block.datasource
: Configures the connection URL (replaces env loading in schema).prisma.config.ts
Driver Adapters (Prisma ORM 7)
Prisma ORM 7 uses the query compiler by default, which requires a driver adapter. Choose the adapter and driver for your database and pass the adapter to
PrismaClient.
| Database | Adapter | JS Driver |
|---|---|---|
| PostgreSQL | | |
| CockroachDB | | |
| Prisma Postgres | | |
| MySQL / MariaDB | | |
| SQLite | | |
| SQLite (Turso/LibSQL) | | |
| SQL Server | | |
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:
bun add -d prisma bun add @prisma/client -
Add a generator block (output is required in Prisma v7):
generator client { provider = "prisma-client" output = "../generated" } -
Generate Prisma Client:
bunx --bun prisma generate -
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
after every schema change.prisma generate
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 (Prisma v6 only)
datasource db { provider = "mongodb" url = env("DATABASE_URL") } generator client { provider = "prisma-client-js" }
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.