티스토리 뷰
[링크프렌즈]
- cafe24 다큐먼트 읽으면서 request/response dto 만들기
- 엔티티 만들기
- 테스트 케이스 만들기
[토이스쿼드]
- 회원가입 / 일반 회원 가입 로직 만들기
- 이거 용현님한테도 물어봐야겠다 ㅎㅎ
- 연동회원 로그인작성하기
- 레디스 만들기
- 레디스 셋팅하여 회원 이메일 인증 하기 탬플릿 로직과
- nodemailer와 aws sms 연결하기
Mysql(RDBMS)에 배열데이터를 어떻게 저장할까?
데이터베이스에 배열을 그대로 하나의 레코드에 저장할 수 없다.
Join 관계를 맺어야만 조회가 가능하다.
1. 정규화
- 역정규화
- 정규화를 따르지 않는 것
- RDBMS의 특징을 무시하고 Nosql처럼 데이터를 마구잡이로 저장
- 괜히 조인해서 DB의 성능을 떨어뜨리지말고, 배열 그대로 테이블에 집어넣어서 꺼내놓는 방식
2. 배열 문자열 저장
배열 자료형을 문자열로 변환한 뒤에 그대로 테이블 스트링 컬럼에 저장
꺼내쓸때도 문자열을 불러와서 다시 파싱하여 배열 자료형으로 만들어서 사용.
const pokemons = ['pikachu', 'garchomp' , 'alakazam']
// JSON.stringify : 배열 -> 문자열 로 변환
let arr2Str = JSON.stringify(poketmons); // '["pikachu","garchomp","alakazam"]'
// JSON.parse : 문자열 -> 배열 로 변환
let str2Arr = JSON.parse(arr2Str); // ['pikachu', 'garchomp', 'alakazam']
3. Mysql에서 지원하는 Json 타입을 사용
mysql 5.7.8부터 json 데이터를 저장할 수 있게 필드타입 기능을 지원한다.
객체와 배열도 지원한다고 한다.
쿼리 성능자체는 스트링타입 컬럼에서 저장하고 꺼내쓰는게 훨씬 빠르다고한다.
typeorm에서 json(string array) 를 저장하는 방법
https://bluehorn07.github.io/2020/09/05/How-to-save-JSON-array-in-MySQL-with-TypeORM.html
typeorm
https://orkhan.gitbook.io/typeorm/docs/entities#simple-array-column-type
https://blog-ko.superb-ai.com/nestjs-interceptor-and-lifecycle/
Observable
Observable은 event가 흐르는 스트림입니다.
Observable은 누군가 구독(subscribe)을 해야 event를 발행(publish) 합니다.
Observer가 Observable 을 구독하면서 next, error, complete 키워드를 사용하여
Observable에 흐르는 event를 처리합니다.
Observer
Observer는 Observable을 구독하는 대상입니다.
Observer를 정의하고 next, error, complete 세가지를 정의해주고
Observable에 구독을 하면 완성합니다.
next는 Observable에 들어오는 event를 처리합니다.
error는 Observable에서 error가 발생했을 때 event 처리합니다.
Observable이 종료되면 complete가 호출하게됩니다.
마지막으로 Observable을 Observer가 구독하면 됩니다.
column의 타입이 enum array 일 경우에는, typeorm에서는 어떻게 나타낼까?
typeorm에서 enum 사용하는방법
cors가 무엇일까?
sdk가 무엇일까? (feat. sdk vs api )
---
Enum-Set 타입컬럼 정의하기
https://orkhan.gitbook.io/typeorm/docs/entities
Typeorm에서 BigInt타입 정의하기
https://www.kindacode.com/snippet/typeorm-how-to-store-bigint-correctly/
'EK > 업무일지' 카테고리의 다른 글
[업무일지] 2023.05.31 (0) | 2023.05.31 |
---|---|
[업무일지] 2023.04.28 ~ 2023.04.29 (0) | 2023.04.28 |
[업무일지] 2023.04.17 (0) | 2023.04.17 |
[업무일지] 2023.04.15 - 2023.04.16 (0) | 2023.04.15 |
[업무일지] 2023.04.12 (0) | 2023.04.12 |
- Total
- Today
- Yesterday
- Nest.js
- 참고
- 스마트폰중독
- typeORM
- 한달독서
- Mongoose
- MySQL
- git
- OS
- 개발용어
- 습관개선
- TypeScript
- 갓생살자
- vscode
- nestjs
- 한달어스
- gem
- 디지털디톡스
- RDBMS
- jest
- 미완
- TDD
- 클린아키텍쳐
- 바이트디그리
- Jekyll
- 나도 할 수 있다
- nestjs jest
- node.js
- MongoDB
- IT용어
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |