prisma-database-setup-sqlite

por prisma

Configuração do SQLite. Referência ao usar este recurso do Prisma.

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

SQLite Setup

Configure Prisma with SQLite.

Prerequisites

  • None (file-based)

1. Schema Configuration

In prisma/schema.prisma:

datasource db {
  provider = "sqlite"
}

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="file:./dev.db"

Connection String Format

file:PATH
  • PATH: Relative path to the database file (from prisma/schema.prisma location usually, but in v7 check prisma.config.ts context). Usually relative to the schema file.

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-better-sqlite3 better-sqlite3
    
  2. Instantiate Prisma Client with the adapter:

    import { PrismaClient } from '../generated/client'
    import { PrismaBetterSqlite3 } from '@prisma/adapter-better-sqlite3'
    
    const adapter = new PrismaBetterSqlite3({
      url: process.env.DATABASE_URL ?? 'file:./dev.db',
    })
    
    const prisma = new PrismaClient({ adapter })
    

Using Driver Adapter (LibSQL / Turso)

For edge compatibility or Turso:

  1. Install:

    npm install @prisma/adapter-libsql @libsql/client
    
  2. Instantiate:

    import { PrismaClient } from '../generated/client'
    import { PrismaLibSql } from '@prisma/adapter-libsql'
    
    const adapter = new PrismaLibSql({
      url: process.env.TURSO_DATABASE_URL,
      authToken: process.env.TURSO_AUTH_TOKEN,
    })
    const prisma = new PrismaClient({ adapter })
    

Limitations

  • No Enums: SQLite doesn't support enums (Prisma polyfills them or treats as String).
  • No Scalar Lists: String[] is not supported directly.
  • Concurrency: Write operations lock the file.

Common Issues

"Database file not found"

Ensure the path in DATABASE_URL is correct relative to where Prisma is running or the schema file. file:./dev.db creates it next to schema.

Mais skills de prisma

prisma-cli-migrate-reset
prisma
prisma migrate reset
official
prisma-cli-validate
prisma
validação do prisma. Referência ao usar este recurso do Prisma.
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
Revise um ou mais ADRs com um olhar novo (como um membro da equipe sem contexto prévio), identifique problemas narrativos e estruturais e, em seguida, reescreva-os. Use quando o…
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
Referência completa para comandos, opções e fluxos de trabalho do Prisma CLI em configuração, migrações e operações de banco de dados. Abrange mais de 20 comandos organizados por prioridade: configuração (init), geração (generate), desenvolvimento (dev), operações de banco de dados (db pull/push/seed/execute) e migrações (migrate dev/deploy/reset/status/diff/resolve). Inclui mudanças do Prisma 7.x: novo arquivo de configuração prisma.config.ts, flags removidas (--skip-generate, --skip-seed, --schema, --url) e explícito...
official
prisma-client-api
prisma
Referência completa da API do Prisma Client para consultas de modelo, operações CRUD, filtragem, relações e transações. Abrange 17 métodos de consulta de modelo, incluindo findUnique, findMany, create, update, delete, upsert e operações em lote com variantes de retorno. Fornece opções de consulta para moldar resultados: select, include, omit, orderBy, take, skip, cursor e distinct. Inclui operadores de filtro escalares e lógicos (equals, in, contains, startsWith, lt, gt) além de filtros de relação (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