- 현장에서 대화가 되어야 한다.
- 특히, BE 와 FE 가 협업을 하는데 의사소통이 안되면 곤란함.
- 실제 애플리케이션에는 많은 데이터를 관리한다.
- 데이터를 잘 분류하고, 데이터를 잘 보관해야 한다.
- 수월하게 데이터를 조회할 수 있어야 함.
- 수월하게 데이터를 수정할 수 있어야 함.
- 수월하게 데이터를 삭제할 수 있어야 함.
- 어떻게 분류, 저장, 관리를 설계하는 행위
- 위의 사항을
데이터베이스모델링,DB설계라고 칭함.
- 협업이 수월함.
- ERD (Entity Relation Diagram) 를 볼 수 있다.
- 효율적으로 데이터를 저장하는 것에 대한 고민을 하게 됨.
- 백엔드 개발자들은 정말 많은 데이터를 관리함.(필수)
- 프론트 개발자도 현재는 필수 교양이다. (취업요구사항)
- RDBMS : MySQL, MariaDB, Oracle, PostgreSql, SQLite 등
- SQL 언어는 엑셀의 표와 같은
테이블에 데이터를 관리한다. - NoSQL 언어는 json형태 즉,
문서에 데이터를 관리한다.(FireBase, MogoDB) - 관계형이란
데이터 테이블과데이터 테이블의 연결을 관리
- 테이블은 엑셀의
표라고 생각하자. - 회원 테이블 만들기
- 제품 테이블 만들기
- 예제) https://docs.google.com/spreadsheets/d/1VSeReFGh94UEtMUjEbx0OVf9pkL8CdAUm9gl9SOoDEE/edit?usp=sharing
- 흔히
pk라고 하면 의사소통됨. - 수 많은 데이터를 구별해 주기 위해서 기본키가 필요함.
- 절대
중복되면 안됨그리고,값이 비어서도 안됨 Auto increment옵션을 주어서 1씩 자동 증가 또는UUID로 랜덤값으로 세팅함- 칼럼명을
id또는uid라고 하는 경우 많음.
fk라고 통상 칭함게시글 테이블과사용자 테이블생성- 예제) https://docs.google.com/spreadsheets/d/1VSeReFGh94UEtMUjEbx0OVf9pkL8CdAUm9gl9SOoDEE/edit?usp=sharing
- FK 를 요약하면, 다른 테이블의 데이터와 관계를 연결시키는 키를 말함.
- 장점은 잘못된 FK 즉, 외래 키를 연결하면 오류를 일으켜 준다.
- 데이터가 오류가 없음을 백엔드 개발자들은
참조 무결성이라고 칭함.
- 운영체제에서는 대,소문자를 구별하는 경우와 그렇지 않은경우 존재한다.
- 운영체제와 상관없도록 반드시
소문자를 규칙으로 하면 좋다.
- 테이블 명, 칼럼 명을 여러 단어로 작성할때
소문자단어_소문자단어로 작성한다..
userName // Bad
user_name // Good
- 여러 명이서 CB를 관리한다.
- 규칙을 지키는 것을 신경써야 한다.
- 직관적일수록 업무 진행이 원활하다.
u_name // Bad
user_name // Good
- 실제로 sql 명령어는 대소문자를 구별하지 않음.
- 가독성을 위해서 대문자를 활용하자.
select name, age
from users
where age = 20
and name = `홍길동`;- 아래는 대문자로 구성함. (권장)
SELECT name, age
FROM users
WHERE age = 20
AND name = `홍길동`;- 데이터가 여러개임을 의미해 줌.
- 회사마다 다 다름.
- 하지만, 지켜주시면
일관성을 유지해 주자. (섞어서 이름짓지말기) - 실습은
복수형으로 진행함.
user
users
post
posts