1. database란?
- data : 형태(수, 단어, 이미지, 영상)로 된 의미의 단어
- web client : 데이터를 요청하는 곳 (front_end)
- 데이터 요청 구조 :
1. web client의 데이터 요청
2. 웹 서버에서 웹클라이언트의 요청을 받아 DB조회
3. DB가 웹서버로 응답(쿼리문을 이용)
4. 웹서버가 웹클라이언트로 요청한 데이터 응답(쿼리문을 이용)
- 데이터베이스는 정보다 데이터를 모아 놓은 집합체
- 데이터들은 Database Management System(DBMS)으로 제어 관리한다.
- 데이터를 제어하는 데 필요한 쿼리문을 사용하는데 그 쿼리문을 SQL문이다.
2. database사용하는 이유
- 데이터를 오랜기간 저장 및 보존하기 위해 사용
- 데이터를 체계적으로 관리(정리) 위해
3. 관계형 데이터베이스(RDBMS)
- RDBMS(Relational Database Management System)
- 모든데이터들은 2차원 테이블로 표현할 수 있다 (column, row)
- 데이터가 관계가 있는 것 끼리 하나로 묶어 표현한다.
- Primary Key(PK) :테이블의 각 행의 고유 키
1. 하나의 데이터만 정확히 지칭할 수 있는 고유번호
- 각각의 테이블들을 서로 상호작용 가능하다.
- Foreign Key(FK) : PK를 참조하는 외부(외래) 키
- one to one(일대일관계) :
하나의 테이블 데이터는 다른 하나의 테이블의 데이터만 연결
- one to many(일대다관계) :
하나의 테이블의 데이터는 다른 하나의 테이블의 여러데이터 연결
foreign key는 여러데이터가 있는 곳에 넣는다.
- many to many(다대다관계) :
하나의 column에는 여러개의 데이터가 들어올 수 없다.
양쪽의 FK를 가지는 중간테이블을 생성하여 양쪽을 연결한다.