Seungwoo Hong
Front-end developer
Modern Database Access
Seungwoo Hong
2020.05.16
is an open-source databse toolkit.
ORM
ORM
Database access
ORM
Database access
SQL builder
Tools
Prisma Client:
Prisma Client:
Auto generated and type-safe query builder
Tools
Prisma Client:
Auto generated and type-safe query builder
Tools
Prisma Migrate:
Prisma Client:
Auto generated and type-safe query builder
Tools
Prisma Migrate:
Data modeling & migration system
Prisma Client:
Auto generated and type-safe query builder
Tools
Prisma Migrate:
Data modeling & migration system
Prisma Studio:
GUI to view and edit data in your databse
Quick start
$ mkdir prisma-starter
$ cd prisma-starter
$ yarn init
...
$ yarn add typescript ts-node @prisma/cli -D
Install package
Quick start
# prisma init
$ prisma initPrisma 초기화
Quick start
prisma 폴더 확인
Quick start
.env:
defining env variables
Quick start
.env:
defining env variables
schema.prisma:
Database connection and Prisma Client generator
Quick start
# Environment variables declared in this file are automatically made available to Prisma.
# See the documentation for more detail: https://pris.ly/d/prisma-schema#using-environment-variables
# Prisma supports the native connection string format for PostgreSQL, MySQL and SQLite.
# See the documentation for all the connection string options: https://pris.ly/d/connection-strings
# mysql://USER:PASSWORD@HOST:PORT/DATABASE
DATABASE_URL="mysql://root:0000@localhost:3306/db"DB URL 설정
.env
Quick start
CLI
prisma generate
schema.prisma파일을 기반으로 Prisma client를 만드는 명령어
CLI
CLI
prisma introspect
connection된 DB에서 스키마를 읽어와 prisma에 모델링합니다.
CLI
CLI
prisma studio
database, IDE, GUI Open
CLI
CLI
Quick start
$ prisma introspectschema.prisma 파일 확인
introspect
Quick start
$ prisma generate@prisma/client 폴더 생성됨
generate
Quick start
client 사용하여 데이터 조회
import { PrismaClient } from '@prisma/client'
const prisma = new PrismaClient()
type User = {
email: string;
id: number;
name: string;
username: string;
}
async function main() {
const users = await prisma.user.findMany()
console.log(users)
}
main()
.catch(e => {})
.finally(async () => {
await prisma.disconnect()
})
Quick start
client 사용하여 데이터 조회
Next
Grapql + Prisma 서버 구축하기
지금까지 설명드린게 Prisma2.0입니다.
지금까지 설명드린게 Prisma2.0입니다.
지금까지 설명드린게 Prisma2.0입니다.
최근까지 1.x 가 업데이트 되었습니다.
지금까지 설명드린게 Prisma2.0입니다.
최근까지 1.x 가 업데이트 되었습니다.
1.x 하고 2.0 차이가 뭔데?
Q&A
By Seungwoo Hong
Modern Database access