🔷 Configurando Prisma ORM

Passo a passo completo para integrar Prisma com PostgreSQL no seu projeto Node.js

📋 Passo a Passo Interativo

🚀 Projeto:

🗄️ DB:🔑 Senha:📡 Porta:
1 / 8
1

Instalar Prisma e Prisma Client

Instale as dependências necessárias do Prisma

📦 Este comando instala o Prisma CLI e o Prisma Client para seu projeto
npm install prisma @prisma/client

📝 Todos os Passos:

1
Instalar Prisma e Prisma Client
2
Inicializar Prisma com PostgreSQL
3
Configurar Variáveis de Ambiente (.env)
4
Criar Schema do Prisma
5
Criar Migration do Banco
6
Gerar Prisma Client
7
Criar Instância do Prisma Client
8
Usar Prisma nas Rotas

🔐 Arquivo .env Completo

📄 Seu arquivo .env deve ter:

# Database
DATABASE_URL="postgresql://postgres:suasenha@localhost:5432/hogwarts_db"

# Server
PORT=3000

📖 Explicação da DATABASE_URL:

  • postgres - Usuário do PostgreSQL
  • suasenha - Senha do banco
  • localhost - Host (servidor local)
  • 5432 - Porta do PostgreSQL (padrão: 5432)
  • hogwarts_db - Nome do banco de dados

📁 Estrutura do Projeto com Prisma

🗂️ Assim deve ficar sua estrutura:

meuBackend/
├── node_modules/
├── prisma/
│   ├── migrations/           # Histórico de migrations
│   │   └── 20240101_init/
│   │       └── migration.sql
│   └── schema.prisma         # Schema do banco de dados
├── src/
│   ├── controllers/          # Lógica de controle
│   │   └── userController.js
│   ├── data/
│   │   └── prismaClient.js   # Instância do Prisma
│   ├── models/
│   └── routes/
│       └── userRoutes.js
├── .env                      # Variáveis de ambiente
├── .gitignore
├── package.json
└── server.js

⚡ Comandos Úteis do Prisma

🗄️ Migrations

  • npx prisma migrate devCriar e aplicar migration
  • npx prisma migrate resetResetar banco de dados
  • npx prisma migrate deployAplicar migrations em produção

🔍 Visualização

  • npx prisma studioAbrir interface visual do banco
  • npx prisma db pullSincronizar schema com DB existente
  • npx prisma db pushSincronizar schema sem migration

🔧 Desenvolvimento

  • npx prisma generateRegenerar Prisma Client
  • npx prisma validateValidar schema.prisma
  • npx prisma formatFormatar schema.prisma

📊 Dados e Seed

  • npx prisma db seedPopular banco com dados iniciais
  • npx prisma db executeExecutar SQL customizado

💡 Dicas Importantes

⚠️ Atenção

  • Use npx, não npm
  • PostgreSQL deve estar rodando
  • .env não vai pro Git (.gitignore)
  • Sempre execute prisma generate após mudar o schema

🛡️ Boas Práticas

  • Crie migrations descritivas
  • Use uma instância única do Prisma
  • Valide dados antes de salvar
  • Use try/catch para erros
  • Feche conexões quando necessário

🚨 Problemas Comuns

  • Erro de conexão: Verifique PostgreSQL
  • Client desatualizado: Execute npx prisma generate
  • Migration falhou: Use migrate reset
  • Porta ocupada: Mude a porta no .env