Database Integration
Connecting to MongoDB, PostgreSQL, and MySQL with Node.js ORMs and drivers.
Overview
Most real-world applications need to persist data. This lesson covers connecting Node.js to popular databases.
Key Concepts
- MongoDB + Mongoose — NoSQL document database with schema validation
- PostgreSQL + Prisma — SQL database with type-safe ORM
- MySQL + Knex.js — SQL query builder for MySQL
- Connection Pooling — Reuse database connections for performance
- Migrations — Version control for database schemas
Code Examples
// Prisma with PostgreSQL
const { PrismaClient } = require('@prisma/client');
const prisma = new PrismaClient();
async function main() {
const user = await prisma.user.create({
data: { name: 'Alice', email: 'alice@example.com' },
});
console.log('Created user:', user);
}
main().catch(console.error).finally(() => prisma.$disconnect());
Practice
Set up a Node.js project with Prisma, create a database schema, and perform CRUD operations.