Contenu
Installations de Prisma
// Créez un répertoire pour votre projet Prisma et entrez dedans npm init -y npm i prisma --save-dev
Créez la base de données
CREATE DATABASE prisma_demo; // Dans le fichier .env mettre cette chaine de connexion DATABASE_URL="mysql://root:password@localhost:3306/prisma_demo"
npm install @prisma/client npx prisma init ✔ Your Prisma schema was created at prisma/schema.prisma You can now open it in your favorite editor. Next steps: 1. Run prisma dev to start a local Prisma Postgres server. 2. Define models in the schema.prisma file. 3. Run prisma migrate dev to migrate your local Prisma Postgres database. 4. Tip: Explore how you can extend the ORM with scalable connection pooling, global caching, and a managed serverless Postgres database. Read: https://pris.ly/cli/beyond-orm
Un répertoire prisma a été créé dans le projet. Dans le fichier schema.prisma mettez le code ci-dessous :
generator client {
provider = "prisma-client-js"
}
datasource db {
provider = "mysql"
url = env("DATABASE_URL")
}
model User {
id Int @id @default(autoincrement())
email String @unique
name String?
createdAt DateTime @default(now())
}
Ce modèle crée une table User avec :
idauto-incrémentéemailuniquenameoptionnelcreatedAtavec la date de création
Faire la migration
npx prisma migrate dev --name init
Cela crée :
- table
User - Génère le client Prisma dans
node_modules/.prisma/client - un fichier de migration
Execution du script d’exploitation de la base de donnée :
import { PrismaClient } from '@prisma/client'
const prisma = new PrismaClient()
async function main() {
// Créer un utilisateur
const newUser = await prisma.user.create({
data: {
email: 'alice@example.com',
name: 'Alice',
},
})
console.log('Utilisateur créé :', newUser)
// Lire tous les utilisateurs
const users = await prisma.user.findMany()
console.log('Liste des utilisateurs :', users)
}
main()
.catch((e) => console.error(e))
.finally(async () => {
await prisma.$disconnect()
})
Ce script une fois exécuté va créer un utilisateur dans la base de données.
Visualiser la base de données avec Studio
npx prisma studio

Syntaxe de l’ORM Prisma
// Trouver un user par email
const user = await prisma.user.findUnique({
where: { email: 'alice@example.com' },
})
// Mettre à jour un user
const updatedRecord = await prisma.user.update({
where: { id: 1 },
data: { email: 'yvon.huynh@hotmail.com' },
})
console.log('Updated utilisateur :', updatedRecord )
// Supprimer un user
// const deletedRecord = await prisma.user.delete({
// where: { email: 'yvon.huynh@gmail.com' },
// })
// console.log('Effacement utilisateur :', deletedRecord)