00
:
00
:
00
:
00
Corso SEO AI - Usa SEOEMAIL al checkout per il 30% di sconto

Schema e Modelli

Il file schema.prisma

Tutto inizia in questo file. Qui definisci la connessione al database, il generatore del client e i tuoi modelli dati.

```prisma // 1. Data Source datasource db { provider = “postgresql” // o mysql, sqlite, sqlserver url = env(“DATABASE_URL”) }

// 2. Generator generator client { provider = “prisma-client-js” }

// 3. Models model User { id Int @id @default(autoincrement()) email String @unique name String? // ? significa opzionale (nullable) posts Post[] // Relazione One-to-Many }

model Post { id Int @id @default(autoincrement()) title String content String? published Boolean @default(false) author User @relation(fields: [authorId], references: [id]) authorId Int } ```

Tipi di Dati

  • String: Testo variabile.
  • Boolean: True/False.
  • Int: Intero.
  • BigInt: Intero grande.
  • Float: Virgola mobile.
  • Decimal: Decimale preciso (valuta).
  • DateTime: Timestamp.
  • Json: Oggetto JSON (se supportato dal DB).
  • Bytes: Dati binari.

Attributi

  • @id: Chiave primaria.
  • @default(...): Valore predefinito (autoincrement(), now(), uuid(), cuid()).
  • @unique: Vincolo univoco.
  • @relation: Definisce chiavi esterne.
  • @map: Mappa il nome del campo/modello su un nome diverso nel DB (utile per legacy).