일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 타입스크립트 매뉴얼
- 타입스크립트 기초
- 앵귤러 최적화
- typescript manual
- TypeScript
- graphql
- 타입스크립트 튜토리얼
- 리액트 스토리북
- 타입스크립트
- 타입 스크립트
- 리액트 셋팅
- graphql 설명서
- typescript-react-nextjs
- 리액트 환경설정
- 리액트 구조
- angular trackby
- angular lazy loading
- graphql 개념
- 타입스크립트 tutorial
- react atomic
- typescript 정독
- 프론트
- typescript 튜토리얼
- react storybook
- 리액트 아토믹
- angular 최적화
- stroybook
- angular optimization
- react setting
- typescript 기초
- Today
- Total
valleycho
Prisma(프리즈마) 본문
prisma 1버전과 2버전의 차이점 (velog님이 자세히 정리해두셨다!! 굿굿)
[출처] velog.io/@jhj46456/Prisma2
달라진 Prisma2를 알아보자
Prisma v2.0(Beta)이 오늘 (04/01/20) 모습을 드러냈다.필자는 업데이트 이메일 오기 전에 우연히 변했다는 걸 알아서 전날 밤부터 새벽까지 사용해보았는데사라진, 추가된, 변경된 기능들을 발견했다.
velog.io
prisma 개념설명 - medium.com/labelstore/prisma%EB%A1%9C-graphql%EC%9D%84-%EC%89%BD%EA%B2%8C-%EB%8F%84%EC%9E%85%ED%95%98%EA%B8%B0-fa64dcf63382
Prisma로 GraphQL을 쉽게 도입하기
기존 ORM을 혁신적으로 대체할 Prisma를 소개하며, 이를 활용하여 GraphQL을 실제 운용환경에 쉽게 도입할 수 있었던 경험을 공유합니다.
medium.com
prisma 사용 이유
- GraphQL 형식의 데이터 모델만 작성하면 사용하는 언어와 DBMS에 구애받지 않고, ORM 클라이언트와 모델, 그리고 Data Schema가 자동으로 생성된다.
- GraphQL, REST API의 구현체를 제공해준다.
- 자체 어드민 페이지를 제공하여 쉬운 데이터 운용이 가능하다.
그럼 prisma를 구성해보자.
[prisma 메뉴얼] www.prisma.io/
Prisma - Database tools for modern application development
Prisma replaces traditional ORMs and can be used to build GraphQL servers, REST APIs, microservices & more.
www.prisma.io
- 메인화면의 내용을 봐도 무방하지만, 필자는 Docs의 start from scratch(처음부터 시작)을 참조하였다.
1. 폴더 생성
2. npm init -y
3. npm i @prisma/cli typescript ts-node @types/node -D
4. npx prisma
5. npx prisma init
- [참고 2]와 같이 .env, schema.prisma 파일이 생성되는데 Connect your database 부분 참조하여 설정을 알맞게 해준다.
필자는 mysql을 사용하므로 mysql 설정을 해줌. (사전에 미리 mysql이 설치되어있어야 함.)
일단 프리즈마를 사용해본 적이 없어서 메뉴얼 대로 해보자.
1. Create database tables with SQL
2. 필자는 mysql workbench를 사용하므로 sql 파일을 이용하여 db의 스키마를 생성한다. 최상단의 Server -> Data Import 메뉴 클릭 (이 부분은 메뉴얼에 없습니다.)
3. npx prisma introspect
→ post 부분의 user -> author로 변경
4. npx i @prisma/client && npx prisma generate
5. Prisma Client의 쿼리 작성을 시작하여 데이터베이스에서 데이터를 읽고 쓰기 (Write your first query with Prisma Client 부분)
- 데이터베이스에서 데이터 읽기
User 스키마의 데이터가 없으므로 빈 값인 [ ] 값이 출력된 것을 확인할 수 있다.
- 데이터베이스에 데이터 쓰기
- 데이터베이스에 데이터 업데이트
6. npx prisma studio
- 참고 내용
1번과 2번의 내용에서 SQL 쿼리문 작성 후 DB의 import 해줘서 스키마를 생성해줬다. 그 방법 이외의 prisma schema를 이용하여 생성할 수 있다. 내용은 아래와 같다.
→ Error: P1014라는 에러가 출력되긴 하지만, DB의 스키마가 잘 생성되는 것을 확인할 수 있다.
에러내용은
P1014 | "The underlying ${kind} for model ${model} does not exist." |
라는데 일단 무시.
'graphql(그래프 큐엘)' 카테고리의 다른 글
Graphql (프론트) Angular<->apollo-Client 환경설정 (0) | 2020.10.29 |
---|---|
Graphql(apollo-server) Queries and Mutations (0) | 2020.10.24 |
Graphql(apollo-server) 환경 설정 (0) | 2020.10.19 |
express - prisma (0) | 2020.10.18 |
GraphQL이란? (0) | 2020.10.11 |