All skills
prisma avatar

/prisma-orm-setup

@b491588 official
by prismaprisma/skills68 stars
7

Set up Prisma ORM in an application, connect its database, or troubleshoot the connection of an existing Prisma 6, 7, or 8 app. Defaults new applications to Prisma ORM 8 and loads the package-owned prisma-8 skill; keeps existing Prisma 6/7 apps on their version with provider references for PostgreSQL, MySQL, SQLite, SQL Server, CockroachDB, MongoDB, and Prisma Postgres.

Use this Skill: https://skilld.dev/gh/prisma/skills/prisma-orm-setup

This session only. Nothing lands on disk.

referencesv7-postgresql.md

≈546 tokens on demand. Your agent reads this file only when SKILL.md points to it.

PostgreSQL Setup

Configure Prisma ORM 7 with PostgreSQL. For an existing Prisma 6 app, keep its configuration and use the Prisma 6 docs; the configuration and adapter examples below are for 7.

Prerequisites

  • PostgreSQL database (local or cloud)
  • Connection string

1. Schema Configuration

In prisma/schema.prisma:

datasource db {
  provider = "postgresql"
}

generator client {
  provider = "prisma-client"
  output   = "../generated"
}

2. Config Configuration

In prisma.config.ts:

import 'dotenv/config'
import { defineConfig, env } from 'prisma/config'

export default defineConfig({
  schema: 'prisma/schema.prisma',
  datasource: {
    url: env('DATABASE_URL'),
  },
})

3. Environment Variable

In .env:

DATABASE_URL="postgresql://user:password@localhost:5432/mydb?schema=public"

Connection String Format

postgresql://USER:PASSWORD@HOST:PORT/DATABASE?schema=SCHEMA
  • USER: Database user
  • PASSWORD: Password (URL encoded if special chars)
  • HOST: Hostname (localhost, IP, or domain)
  • PORT: Port (default 5432)
  • DATABASE: Database name
  • SCHEMA: Schema name (default public)

Driver Adapter

Use a driver adapter for the standard SQL workflow.

  1. Install adapter and driver:

    npm install @prisma/adapter-pg@7 pg
  2. Instantiate Prisma Client with the adapter:

    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 })

Common Issues

"Can't reach database server"

  • Check host and port
  • Check firewall settings
  • Ensure database is running

"Authentication failed"

  • Check user/password
  • Special characters in password must be URL-encoded

"Schema does not exist"

  • Ensure ?schema=public (or your schema) is in the URL

References

Source: SKILL.md on GitHub

No alerts2d3 checks · Risk SAFE
  • Gen Agent Trust Hub2d

    This skill provides instructions for setting up Prisma ORM version 6, 7, and 8. It utilizes official Prisma CLI tools and packages from the vendor. Security analysis indicates the skill follows safe practices for handling credentials via environment variables and includes standard placeholder values for documentation. It also features a mechanism to synchronize and load updated guidance directly from the Prisma package.

  • Socket2d

    No alerts

  • Snyk2d

    Risk: LOW · No issues

Signed by skilld at b491588. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 3 hours ago.

Activeupdated 3 days ago
metadata
{
  "author": "prisma",
  "version": "1.0.0"
}

README badge

README badge for prisma/skills/prisma-orm-setup