Prisma

 

Modern Database Access

Seungwoo Hong

2020.05.16

Prisma

 

is an open-source databse toolkit.

Prisma

 

ORM

Prisma

 

ORM

Database access

Prisma

 

ORM

Database access

SQL builder

Prisma

 

Prisma

 

Tools

Prisma Client:

Prisma

 

Prisma Client:

Auto generated and type-safe query builder

Tools

Prisma

 

Prisma Client:

Auto generated and type-safe query builder

Tools

Prisma Migrate:

Prisma

 

Prisma Client:

Auto generated and type-safe query builder

Tools

Prisma Migrate:

Data modeling & migration system

Prisma

 

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

Prisma

 

Quick start

$ mkdir prisma-starter

$ cd prisma-starter

$ yarn init

...

$ yarn add typescript ts-node @prisma/cli -D

Install package

Prisma

 

Quick start

# prisma init

$ prisma init

Prisma 초기화

Prisma

 

Quick start

prisma 폴더 확인

Prisma

 

Quick start

.env:

defining env variables

Prisma

 

Quick start

.env:

defining env variables

schema.prisma:

Database connection and Prisma Client  generator

Prisma

 

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

Prisma

 

Quick start

Prisma

 

CLI

Prisma CLI 알아보기

Prisma

 

prisma generate

schema.prisma파일을 기반으로 Prisma client를 만드는 명령어

CLI

Prisma

 

CLI

Prisma

 

prisma introspect

connection된 DB에서 스키마를 읽어와 prisma에 모델링합니다.

CLI

Prisma

 

CLI

Prisma

 

prisma studio

database, IDE, GUI Open

CLI

Prisma

 

CLI

Prisma

 

Quick start

$ prisma introspect

schema.prisma 파일 확인

introspect

Prisma

 

Quick start

$ prisma generate

@prisma/client 폴더 생성됨

generate

Prisma

 

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()
    })

Prisma

 

Quick start

client 사용하여 데이터 조회

Prisma

 

Next

Grapql + Prisma  서버 구축하기

Prisma

 

지금까지 설명드린게 Prisma2.0입니다.

Prisma

 

Prisma

 

지금까지 설명드린게 Prisma2.0입니다.

Prisma

 

지금까지 설명드린게 Prisma2.0입니다.

최근까지 1.x 가 업데이트 되었습니다.

Prisma

 

지금까지 설명드린게 Prisma2.0입니다.

최근까지 1.x 가 업데이트 되었습니다.

1.x 하고 2.0 차이가 뭔데?

Prisma

 

Prisma

 

An improved modelling syntax

Prisma

 

Q&A

Prisma

By Seungwoo Hong

Prisma

Modern Database access

  • 381