prisma-database-setup-sqlserver

SQL Server Setup. Reference when using this Prisma feature.

npx skills add https://github.com/prisma/cursor-plugin --skill prisma-database-setup-sqlserver

SQL Server Setup

Configure Prisma with Microsoft SQL Server.

Prerequisites

  • SQL Server 2017, 2019, 2022, or Azure SQL
  • TCP/IP enabled

1. Schema Configuration

In prisma/schema.prisma:

datasource db {
  provider = "sqlserver"
}

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

2. Config Configuration (v7)

In prisma.config.ts:

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="sqlserver://localhost:1433;database=mydb;user=sa;password=Password123;encrypt=true;trustServerCertificate=true"

Connection String Format

sqlserver://HOST:PORT;database=DB;user=USER;password=PASS;encrypt=true;trustServerCertificate=true
  • encrypt: Required for Azure (true).
  • trustServerCertificate: True for self-signed certs (local dev).

Driver Adapter (Prisma ORM 7 required)

Prisma ORM 7 uses the query compiler by default, so you must use a driver adapter.

  1. Install adapter and driver:

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

    import 'dotenv/config'
    import { PrismaClient } from '../generated/client'
    import { PrismaMssql } from '@prisma/adapter-mssql'
    
    const adapter = new PrismaMssql({
      server: 'localhost',
      port: 1433,
      database: 'mydb',
      user: process.env.SQLSERVER_USER,
      password: process.env.SQLSERVER_PASSWORD,
      options: {
        encrypt: true,
        trustServerCertificate: true,
      },
    })
    
    const prisma = new PrismaClient({ adapter })
    

Common Issues

"Login failed for user"

  • SQL Server auth vs Windows auth. Prisma typically uses SQL Server authentication (username/password).
  • Ensure TCP/IP is enabled in SQL Server Configuration Manager.

"Table not found" (dbo schema)

Prisma assumes dbo schema by default. If using another schema, update the model or connection string? SQL Server provider mostly sticks to default schema.

More skills from prisma

prisma-cli-migrate-reset
prisma
prisma migrate reset
official
prisma-cli-validate
prisma
prisma validate. Reference when using this Prisma feature.
official
prisma-next-extension-upgrade
prisma
Upgrade Prisma Next in your extension. Bumps every `@prisma-next/*` dependency to the requested target (or npm `latest`), runs the per-transition upgrade…
official
adr-review
prisma
Review one or more ADRs with fresh eyes (as a team member without prior context), identify narrative and structural issues, then rewrite them. Use when the…
official
prisma-next-upgrade
prisma
Upgrade Prisma Next in your app. Bumps every `@prisma-next/*` dependency from the version pinned in the lockfile to the requested target (or npm `latest`),…
official
prisma-cli
prisma
Complete reference for Prisma CLI commands, options, and workflows across setup, migrations, and database operations. Covers 20+ commands organized by priority: setup ( init ), generation ( generate ), development ( dev ), database operations ( db pull/push/seed/execute ), and migrations ( migrate dev/deploy/reset/status/diff/resolve ) Includes Prisma 7.x changes: new prisma.config.ts configuration file, removed flags ( --skip-generate , --skip-seed , --schema , --url ), and explicit...
official
prisma-client-api
prisma
Complete Prisma Client API reference for model queries, CRUD operations, filtering, relations, and transactions. Covers 17 model query methods including findUnique , findMany , create , update , delete , upsert , and bulk operations with return variants Provides query options for shaping results: select , include , omit , orderBy , take , skip , cursor , and distinct Includes scalar and logical filter operators ( equals , in , contains , startsWith , lt , gt ) plus relation filters ( some ,...
official
prisma-compute
prisma
Prisma Compute deployment and hosting guide. Use whenever the user mentions Prisma Compute, `prisma.compute.ts`, `defineComputeConfig`, deploying or hosting a Prisma app, `@prisma/cli app deploy`, `compute:deploy`, `create-prisma --deploy`, `PRISMA_SERVICE_TOKEN`, `auth workspace`, Compute apps/deployments/build logs/domains, `@prisma/cli agent install`, localhost vs `0.0.0.0`, deploy port binding, or framework deploy readiness for Hono, Elysia, Next.js, TanStack Start, Astro, Nuxt, Svelte,...
developmentdevopsofficial