데이터 베이스란?
: 데이터를 효율적으로 관리하기 위한 집합체 (DB)
장점
- 중복 막기
- 빠른 연산
DBMS
: 데이터 베이스를 운영하고 관리하는 시스템
SQL : 데이터베이스에 연산 요청
RDBMS 쓰는 이유
Relational DBMS : 데이터 간 "관계"
중복되는 데이터 관리에 탁월! -> 테이블 분리(정규화)
데이터 중복
cf. 정규화 = 테이블을 쪼갠다.
PK(Primary Key)
: 기본키
: 해당 테이블의 각 행(row)을 유니크하게 구별할 수 있는 key 값
FK(Foreign Key)
: 외래키
: A테이블에서 B테이블의 데이터를 찾아가고 싶을 때, 사용하는 key 값
- 최대한 B테이블의 PK 값을 A테이블의 FK로 쓰는 것이 이상적
데이터베이스 "테이블 간 어떤 연관 관계를 가지고 있는지" - 1:1, 1:N, M:N (연습 많이 해야,,)
게시글 vs 사용자 - 1번이 현실적으로 맞지!
1) 사용자 1명 : 게시글 여러 개 1:N
2) 게시글 1개당 : 사용자 1명 1:1
게시글 - 사용자 테이블 분리
게시글 테이블 보고 사용자 데이터 확인 : 연관 관계 확인 가능 -> 게시글 테이블 보고 사용자랑 어떤 관계인지
사용자 테이블 보고 게시글 데이터 확인 불가
(주요) 현업에 계신 분들은 어떻게? "DBA"
+ 구현해보면 SQL이 꼬일 때, 너무 많은 SQL이 필요할 때 --> 설계 고쳐
'데브코스 > 강의 정리' 카테고리의 다른 글
5주차 데이터 베이스 GUI, 디비 연동, timezone 설정 (0) | 2024.09.14 |
---|---|
5주차 데이터 베이스 CLI (1) | 2024.09.14 |
5주차 라우팅, rename, (0) | 2024.09.10 |
5주차 Object.keys(객체이름), 채널 api 설계 (0) | 2024.09.09 |
4주차 (0) | 2024.09.07 |