Node.js 숙련
1. SQL
1) 개요
- vscode my sql익스텐션에서 쿼리명령어로 진행가능
- db : 테이블/컬럼으로 구성 (고도화된 엑셀 개념)
2) 쿼리 명령어
- 테이블 생성
- 데이터 삽입
- 데이터 조회
3) 제약조건
- 컬럼들간의 제한사항을 관리하고, 조건을 위반하는 데이터를 방지하여 데이터베이스의 완전성을 보장하는 규칙
- 데이터가 결함없이 완벽한 상태인 무결성(Integrity)을 지키기 위해 만들어진 개념
- 테이블을 분석할 때 설정된 컬럼 속성들을 바탕으로 해당 테이블이 어떤 역할을 하는지 명확하게 인지 가능
4) 제약조건 종류
- 테이블 데이터의 고유성을 보장하는(Primary Key)
- 빈 값을 허용하지 않는 조건(Null)
- 특정 컬럼이 중복된 키를 가질 수 없는 조건(Unique)
- 테이블 간의 관계를 설정하는 조건(Foreign Key)
- 1:1, 1:N, N:M 등 설정가능
5) 외래조건 심화
- 참조데이터 변경/삭제시 4가지 상태 설정 가능
- CASCADE 함께 변경/삭제
- NO ACTION 아무런 행위 없음
- SE NULL null값으로 변경
- SET DEFAULT 기본갑승로 변경
- SELECT JOIN 공통된 데이터를 기준으로 테이블을 연결하여 하나의 테이블처럼 표현 가능
2. Sequelize
1) 개요
- orm의 하나 (https://jujiprogram.tistory.com/54)
- mongoose와 비교
2) 기본 설정
- npm sequelize init, config설정
- npx sequelize db:create
'항해14기 본과정 > 항해14기 개발일지' 카테고리의 다른 글
[항해 14기] 개발일지21 (Node.js 3lv 과제) (0) | 2023.04.26 |
---|---|
[항해 14기] 개발일지20 (Sequelize, Migration) (0) | 2023.04.25 |
[항해 14기] 개발일지18 (쿠키/세션, JWT, RDS) (0) | 2023.04.24 |
[항해 14기] 개발일지17 (Node.js 1LV 과제, 2LV 과제) (0) | 2023.04.24 |
[항해 14기] 개발일지16 (Git, EC2) (0) | 2023.04.24 |