hyo_jung
[Work Book] UMC 서버 4주차 본문
학습 목표
- RDBMS 개념 적립
- SQL 이해
- DB 설계 방법 이해
- 데이터베이스 용어 이해
- AWS RDS 구축
핵심 키워드
RDBMS
- RDB : 키와 값들의 간단한 관계를 테이블로 정리하며 테이블 간의 관계를 표현할 수 있는 데이터베이스 모델을 말한다.
- RDBMS : 관계형 데이터베이스 관리 시스템으로 RDB를 관리할 수 있는 시스템이다.
SQL
- DDL (데이터 정의어 : 데이터 구조를 정의하는 데 사용)
- CREATE : 데이터베이스의 객체를 생성
- ALTER : 데이터베이스의 구조를 변경
- DROP : 데이터베이스의 객체를 삭제
- RENAME : 데이터베이스의 객체 이름을 변경
- TRUNCATE : 테이블의 모든 행을 삭제
- DML (데이터 조작어 : 데이터를 조회하거나 검색하기 위해 사용)
- SELECT : 데이터베이스에서 데이터를 검색
- INSERT : 테이블에 데이터를 삽입
- UPDATE : 테이블 내의 기존 데이터를 수정
- DELETE : 테이블 내의 데이터 삭제
- DCL (데이터 제어어 : 데이터베이스에 권한 부여)
- GRANT : 데이터베이스에 대한 사용자의 권한을 제공
- REVOKE : GRANT로 주어진 권한 철회
- TCL (트랜잭션 제어어 : 데이터의 보안, 무결성 등을 정의하기 위해 사용)
- COMMIT : 트랜잭션의 작업 결과를 저장 반영
- ROLLBACK : 데이터베이스를 마지막 COMMIT 된 시점으로 복원
- SAVEPOINT : 현 시점에서 SAVEPOINT까지 트랜잭션의 일부만 롤백
DataBase 용어
- 테이블(Table)
- 행과 열로 이루어진 데이터의 집합이다.
- 모든 값은 유일한 값을 가진다.
- 하나의 Relation에서 중복되는 행이 존재하면 안된다.
- 행과 열로 이루어진 데이터의 집합이다.
- 행(Row)
- 한 개체의 특정 인스턴스에 대한 값들의 모임이다.
- 튜플 또는 레코드라는 이름으로 불린다.
- 열(Colum)
- 어떤 개체를 표현하고 저장하는데 사용되는 속성이다.
- 스키마(Schema) (외부 스키마 / 개념 스키마 / 내부 스키마)
- 데이터베이스의 구조를 전반적으로 기술한 것으로 데이터베이스를 구성하는 레코드의 크기, 키의 정의, 레코드 간의 관계 등을 정의한 것을 말한다.
- 외부 스키마 : 프로그래머나 사용자의 입장에서 데이터베이스의 모습으로 조직의 일부분을 정의한 것
- 개념 스키마 : 조직체 전체를 관장하는 입장에서 데이터베이스를 정의한 것, 모든 응용 시스템과 사용자들이 필요로 하는 데이터를 통합한 조직 전체의 데이터베이스 구조를 논리적으로 정의한 것
- 내부 스키마 : 전체 데이터베이스의 물리적 저장 형태를 기술하는 것
- 데이터베이스의 구조를 전반적으로 기술한 것으로 데이터베이스를 구성하는 레코드의 크기, 키의 정의, 레코드 간의 관계 등을 정의한 것을 말한다.
유일성과 최소성
- 유일성 : 하나의 키 값으로 튜플을 유일하게 식별할 수 있는 성질
- 최소성 : 키를 구성하는 속성들 중 꼭 필요한 최소한의 속성들로만 키를 구성하는 성질
키
- 슈퍼키 : 유일성 O, 최소성 X인 키
- 대체키 : 후보키 중 기본키가 되지 못한 키
- 후보키 : 유일성 O, 최소성 O인 키
- 기본키 : 후보키 중 선택받은 키
- 외래키 : 다른 릴레이션의 기본키를 참조하는 키
1:1 관계 / 1:N관계 / N:M관계
- 1:1 관계 : 상대 엔티티와 반드시 단 하나의 관계를 가지는 것을 말한다.
- 1:N 관계 : 한 쪽 엔티티가 관계를 맺은 엔티티 쪽의 여러 객체를 가질 수 있는 것을 말한다.
- N:M 관계 : 일반적으로 두 테이블의 대표키를 column으로 갖는 또 다른 테이블을 생성하여 관리한다. 관계를 가진 양쪽 엔티티 모두에서 1:N 관계를 가지는 것을 말한다.
알아두면 좋을 SQL 연산자 및 함수 정리
SQL 연산자
| 이름 | 설명 |
| BETWEEN a AND b | a와 b의 값 사이에 있으면 된다. |
| IN | 리스트에 있는 값 중에서 어느 하나라도 일치하면 된다. |
| LIKE '비교문자열' | 비교문자열과 형태가 일치하면 된다. |
| IS NULL | NULL 값인 경우 |
추가적으로 알아보면 좋을 SQL 함수
- COUNT , SUM 집계 함수
- 문자형 함수
- where 절 조건
- 서브 쿼리
- 반올림, 버림 함수
- Group By
- is, null, is not null
- JOIN (InnerJoin / Left Join / Right Join / OuterJoin / Full Join )
'개발 > Backend' 카테고리의 다른 글
| [Work Book] UMC 서버 6주차 (0) | 2021.11.28 |
|---|---|
| [Work Book] UMC 서버 5주차 (0) | 2021.11.07 |
| [Work Book] UMC 서버 3주차 (0) | 2021.10.18 |
| [Work Book] UMC 서버 2주차 (0) | 2021.10.15 |
| Quick DBD 사용 후기 (0) | 2021.10.10 |