0. DB
네트워크가 연결되지 않은 상황에서 카톡 채팅을 볼 수 있는 이유는 채팅 내역들이 기기(LocalDB)에 저장을 하고 불러오기 때문입니다! 그러면 Realm을 통해서 이것을 구현해봅시다
→ 그 전에 DB와 관련된 개념들을 정리해보자구욥
데이터베이스
데이터를 저장한 파일들의 집합체로 볼 수 있고, 우리는 그 중에서 관계형 디비를 사용할거에요!
RDBMS
관계형 데이터베이스를 생성, 수정, 관리할 수 있는 소프트웨어
- 명확한 테이블 구조를 가집니다
- 테이블 - 컬럼 형태로 데이터를 저장합니다.
- 테이블과 테이블 간의 연관 관계 (FK)를 이용해 필요한 정보를 구현합니다.
- 중복 데이터 저장 방지를 위해 정규화를 합니다 → 데이터의 독립성이 높습니다.
- 정규화: 데이터의 정합성을 확보하기 위해 테이블을 분할해 생성하는 것
- 주로 Join 방식으로 필요한 정보를 탐색합니다.
- Join: 두 개 이상의 테이블에 관계를 생성해 데이터를 출발하는 것
테이블
- Row와 Column으로 이루어진 데이터의 집합
- 일관된 특징을 가진, 중복되지 않는 데이터를 담기 위한 하나의 데이터 집합입니다.
컬럼
- 테이블을 구성하는 정보 중 세로로 묶은 데이터
- 데이터 타입을 지정할 수 있다
- 특정한 Record의 내용을 찾기 위해서는 Column의 내용을 기준으로 찾는다.
레코드
- 테이블을 구성하는 정보 중 가로로 묶는 데이터
- 한 객체에 대한 정보를 담음
- 기본 PrimaryKey로 구별이 가능하다
