UMC server - 4주차 워크북

써니·2021년 11월 4일
0

UMC-Server

목록 보기
5/6
post-thumbnail

1. 4주차(DB) PPT

2. 학습 목표

  1. RDBMS개념 적립
  2. SQL 이해
  3. DB 설계 방법 이해
  4. 데이터베이스 용어 이해
  5. AWS RDS 구축

3. 4주차 수업 후기

💡 4주차 수업 듣고 느낀점 이야기, 각자 진행상황 공유

4. 실습

🥚 Quick DBD & SQL 쿼리 실습 영상 : 비공개

📝실습 체크리스트 : 비공개

5. 핵심 키워드

  • RDBMS
    • Relational DataBase Management System: 관계형 모델을 기반으로 하는 데이터베이스 관리 시스템

      • RDBMS = a type of DBMS
    • Relational DB = 모든 데이터를 2차원의 테이블 형태로 표현

    • 테이블이 서로 연관되어 있어 일반 DBMS보다 효율적으로 데이터를 저장, 구성 및 관리할 수 있다.

    • 정규화를 통해 데이터의 중복성을 최소화, 트랜잭션을 수행하는 것이 더 쉽다

      • 트랜잭션?
    • 데이터의 원자성, 일관성, 격리 및 내구성을 유지하며 데이터의 무결성을 높인다.

    • EX: MSSQL, MySQL, Oracle

      참고 링크: https://m.blog.naver.com/cjhol2107/221758915414

  • SQL 대표적인 명령문 - DDL, DML, DCL이 있다! 참고 링크: https://sowon-dev.github.io/2020/06/04/200605dbi/
  • DataBase 용어
    • 테이블(Table) = relation
      - 관계형 데이터베이스에서 정보를 구분하여 저장하는 기본 단위

    • 스키마(Schema) (외부 스키마 / 개념 스키마 / 내부 스키마)
      - 데이터베이스의 구조를 전반적으로 기술한 것
      - 데이터베이스의 엔티티와 그 엔티티들 간의 관계를 정의

      참고 링크 : https://1-day-1-coding.tistory.com/2

  • 유일성과 최소성
    • 유일성 : 하나의 릴레이션에서 모든 행은 서로 다른 키 값을 가져야한다.
    • 최소성 : 꼭 필요한 최소한의 속성들로만 키를 구성해야한다.
  • 키 : DB에서 다른 튜플과 구별할 수 있는 유일한 기준이 되는 attribute(속성) (조건에 만족하는 튜플 찾기/ 정렬하기 등에 이용)
    • 슈퍼키 (super key): 한 릴레이션 내의 속성들의 집합으로 이루어진 키로, 유일성은 만족시키나 최소성은 아니다.

    • 후보키 (candidate key): 기본키로 사용할 수 있는 속성들, 유일성과 최소성을 만족한다.

      • 대체키 : 후보키에서 기본키로 사용될 잠재적 역량을 가졌지만 선택되지 못한 키
    • 기본키 (primary key): 후보키 중 선택한 메인키로 한 릴레이션에서 튜플을 구별하는 키이다. 중복될 수 없음

    • 외래키 (foreign key) : 다른 릴레이션간의 기본키를 참조 하는 속성으로 테이블들의 관계를 나타내기 위하여 사용

      참고 링크 : https://hoban123.tistory.com/147, https://jhnyang.tistory.com/71

  • 1:1 관계 / 1:N관계 / N:M관계
    • 1:1 관계

      • 어느 엔티티 쪽에서 상대 엔티티와 반드시 단 하나의 관계를 가지는 것
    • 1:N 관계

      • 한 쪽 엔티티가 관계를 맺은 엔티티 쪽의 여러 객체를 가질 수 있는 것
      • 부모 테이블의 PK를 자식 테이블에 FK로 집어 넣어 관계를 표현
      • 부모 has a 자식
    • N:M 관계
      - 관계를 가진 양쪽 엔티티 모두에서 1:N 관계를 가지는 것
      - N:M 관계는 서로가 서로를 1:N 관계1:M 관계로 갖고 있기 때문에, 서로의 PK를 자신의 외래키 컬럼으로 갖고 있으면 된다

          ![](https://velog.velcdn.com/images%2Fkim_sunnnny%2Fpost%2Fdefa3f8d-d000-4cab-b44e-693e0c219a04%2Fimage.png)
          

      참고 링크: https://velog.io/@gillog/DB-11-1N-NM-관계

  • MySQL 최적의 데이터 타입 선택 방법 : 참고 링크
  • 수정이 될 때 자동으로 시간 넣어주는 방법 : 참고 링크

❓ 모르는 것들 / 해결하지 못한 것들

모르거나 해결하지 못한 것들을 정리해서 QnA 채널이나 스터디를 통해 같이 해결해보아요!

질문은 어떻게 하는게 좋나요?

6. 알아두면 좋을 SQL 연산자 및 함수 정리

Copy of SQL 연산자

🧐 추가적으로 알아보면 좋을 SQL 함수

  1. COUNT , SUM 집계 함수
  2. 문자형 함수
  3. where 절 조건
  4. 서브 쿼리
  5. 반올림, 버림 함수
  6. Group By
  7. is, null, is not null
  8. JOIN (InnerJoin / Left Join / Right Join / OuterJoin / Full Join )

by 스누피(Snoopy)

0개의 댓글