javadocq

# 전체 글 (52)

Next.js 2026. 8. 31. 19:42

[Next.js] Prisma @relation으로 다대다 관계와 수강 신청 구현하기

이전 글에서는 Next.js Server Action과 Prisma를 이용해 교육 과정의 등록·조회·수정·삭제 기능을 구현했다.마지막 글에서는 교육생과 교육 과정 사이의 관계를 추가하고, 특정 교육생이 원하는 과정에 수강 신청할 수 있는 기능을 구현한다.전체 관계는 다음과 같다.Student→ Enrollment→ Course한 명의 교육생은 여러 과정에 신청할 수 있고, 하나의 과정에도 여러 교육생이 참여할 수 있다.따라서 Student와 Course는 다대다 관계를 가진다.1. Student와 Course의 관계 설계교육생과 과정의 관계는 다음과 같다.Student 1명 → 여러 EnrollmentCourse 1개 → 여러 EnrollmentStudent N ↔ M CoursePrisma에서는 다대다..

Next.js 2026. 8. 31. 19:27

[Next.js] Server Action과 Prisma로 CRUD 구현하기

이전 글에서는 Next.js 프로젝트에 Prisma 7과 SQLite를 연결하고, Server Component에서 Course 테이블을 조회했다. 이번 글에서는 교육 과정 관리에 필요한 CRUD 기능을 구현한다.Create: 교육 과정 등록Read: 교육 과정 목록 및 단일 과정 조회Update: 교육 과정 수정Delete: 교육 과정 삭제별도의 REST API를 만들지 않고 Next.js App Router의 Server Component와 Server Action을 활용했다.1. 구현 흐름전체적인 데이터 흐름은 다음과 같다.사용자가 Form 입력→ Server Action 호출→ Prisma Client 실행→ SQLite 데이터 변경→ revalidatePath로 경로 갱신→ Server Comp..

Next.js 2026. 8. 31. 19:14

[Next.js] Prisma 7과 SQLite 연결하기

이전 글에서는 Next.js App Router 프로젝트를 생성하고 기본 폴더 구조를 확인했다. 이번 글에서는 생성한 Next.js 프로젝트에 Prisma ORM과 SQLite를 연결하고, 교육 과정 정보를 저장할 Course 테이블을 만들어본다.최종적으로 다음 흐름이 정상적으로 동작하는지 확인하는 것이 목표다.Next.js Server Component→ Prisma Client→ better-sqlite3→ SQLite→ Course 테이블 조회1. Prisma란?Prisma는 TypeScript 코드와 관계형 데이터베이스 사이를 연결해주는 ORM(Object-Relational Mapping)이다.ORM을 사용하지 않고 SQLite에서 교육 과정 하나를 조회한다면 SQL을 직접 작성해야 한다.SEL..