본문 바로가기
SMALL

분류 전체보기130

[SQLD] 2과목 - 1장) 1절. 관계형 데이터베이스 개요 2과목. SQL 기본 및 활용 1장. SQL 기본 1절. 관계형 데이터베이스 개요 # 데이터베이스(Database)와 DBMS(Database Management System) - 데이터베이스 · 데이터의 집합 · 형식을 갖추지 않은 엑셀 파일 모음도 데이터베이스임 - DBMS · 데이터를 효과적으로 관리하기 위한 시스템 · 개인이 파일을 여러 개 묶어서 폴더에 보관하면 데이터를 찾거나 관리하는데 큰 비용이 발생 ➪ 보다 시스템 적으로 작동하게 만든 시스템임 ex) Oracle, MYSQL 등 # 관계형 데이터베이스 구성요소 - 계정: 데이터의 접근 제한을 위한 여러 업무별/시스템별 계정이 존재함 - 테이블: DBMS의 DB 안에서 데이터가 저장되는 형식(수정, 삽입 등) - 스키마: 한 유저가 가지고 .. 2024. 3. 6.
[SQLD] 1과목 - 2장) 5절. 본질식별자 vs 인조식별자 1과목. 데이터 모델링의 이해 2장. 데이터 모델과 SQL 5절. 본질식별자 vs 인조식별자 # 식별자 구분(대체 여부에 따른) - 본질식별자 · 업무에 의해 만들어지는 식별자(꼭 필요한 식별자) - 인조식별자 · 인위적으로 만들어지는 식별자(꼭 필요하지는 않지만 관리의 편이성 등의 이유로 인위적으로 만들어지는 식별자) · 본질식별자가 복잡한 구성을 가질 때 인위적으로 생성 · 주로 각 행을 구분하기 위한 기본키로 사용되며 자동으로 증가하는 일련번호 같은 형태임 ex) 주문과 주문상세에 엔터티를 설계할 때, 주문이 들어오면 주문 엔터티에는 (주문번호, 고객번호)를 저장함. 이때 PK는 주문번호임. 주문상세에는 각 주문별로 어떤 상품이, 언제, 몇 개 주문했는지 등을 기록함. · 인조식별자의 단점 ➢ 중복.. 2024. 3. 6.
[SQLD] 1과목 - 2장) 4절. NULL 속성의 이해 1과목. 데이터 모델링의 이해2장. 데이터 모델과 SQL4절. NULL 속성의 이해 # NULL- 의미 · DBMS 에서 아직 정해지지 않은 값을 의미 · 0과 빈문자열(‘ ’)과는 다른 개념 · 모델 설계 시 각 컬럼 별로 NULL을 허용할 지를 결정함 - 특성 ① NULL을 포함한 연산 결과는 항상 NULL ➪ 컬럼에 공백으로 보이는 것은 NULL로 생각해야 함. 이 때, NULL을 포함한 연산결과는 NULL이 리턴됨(NULL을 사전 치환 하면 연산 가능) ② 집계함수는 NULL을 제외한 연산 결과 리턴 ➪ SUM, AVG, MIN, MAX 등의 함수는 항상 NULL을 무시함. NULL일 경우 셀 때 제외되고 NOT NULL인 행만 세어서 리턴함 ➪ AVG(평균)을 연산할 때 NULL을 무시한 평균인.. 2024. 3. 5.
[SQLD] 1과목 - 2장) 3절. 모델이 표현하는 트랜잭션의 이해 1과목. 데이터 모델링의 이해2장. 데이터 모델과 SQL3절. 모델이 표현하는 트랜잭션의 이해 # 트랜잭션- 하나의 연속적인 업무 단위를 말함 - 트랜잭션에 의한 관계는 필수적인 관계 형태를 가짐 - 하나의 트랜잭션에는 여러 SELECT, INSERT, DELETE, UPDATE 등이 포함될 수 있음 ex) A고객이 B고객에게 100만원을 이체하려고 할 때 ①: A 고객의 잔액이 100만원 이상인지 확인 ②: 이상이면, A고객의 잔액을 -100 UPDATE ③: B 고객 잔액에 +100 UPDATE 이 때, 2번과 3번 과정은 동시에 수행되어야 함. 즉, 모두 성공하거나 모두 취소 되어야 함 ☞ 이런 특성을 갖는 연속적인 업무 단위를 트랜젝션이라고 함 *주의* 1. A 고객 잔액 차감과 B 고객 잔액 가.. 2024. 3. 5.
[SQLD] 1과목 - 2장) 2절. 관계와 조인의 이해 1과목. 데이터 모델링의 이해2장. 데이터 모델과 SQL2절. 관계와 조인의 이해# 관계(Relationship)의 개념- 엔터티 인스턴스 사이의 논리적인 연관성 - 엔터티의 정의, 속성 정의 및 관계 정의에 따라서 다양하게 변할 수 있음 - ’관계를 맺는다‘ 라는 의미는 부모의 식별자를 자식에 상속하고, 상속된 속성을 매핑키(조인키)로 활용한다는 의미 ➪ 부모, 자식을 연결하는 것 # 관계의 분류- 관계는 존재에 의한 관계와 행위에 의한 관계로 분류 - 존재 관계는 엔터티 간의 상태를 의미 ex) 사원 엔터티는 부서 엔터티에 소속됨 - 행위 관계는 엔터티 간의 어떤 행위가 있는 것을 의미 ex) 주문은 고객이 주문할 때 발생됨 # 조인의 의미- 정규화는 테이블에 있는 데이터의 중복을 피하기 위해 분리함.. 2024. 3. 5.
[SQLD] 1과목 - 2장) 1절. 정규화 1과목. 데이터 모델링의 이해2장. 데이터 모델과 SQL1절. 정규화 # 정규화- 하나에 엔터티에 많은 속성을 넣게 되면, 해당 엔터티를 조회할 때마다 많은 양의 데이터가 조회되기에 최소한의 데이터만을 하나의 엔터티에 넣는 식으로 데이터를 분해하는 과정 ex) 학생 테이블에 이름, 학번 등의 데이터를 어디까지 넣을 것인가. 지도교수 정보가 학생 테이블에 들어가면 데이터의 중복이 발생하기 때문에 정규화를 통해 해소할 수 있음 - 데이터의 일관성, 최소한의 데이터 중복, 최대한의 데이터 유연성을 확보하기 위한 것 - 데이터의 중복을 제거하고 데이터 모델의 독립성을 확보 - 데이터 이상현상을 줄이기 위한 데이터베이스 설계 기법 - 엔터티를 상세화하는 과정으로 논리 데이터 모델링 수행 시점에서 고려됨 - 제 1.. 2024. 3. 5.