본문 바로가기
728x90
반응형

DB/이론 및 개념19

# 05. 데이터 베이스 모델링 데이터 베이스 모델링여러 절차적 과정에 의해 진행1. 순서요구사항 분석 -> 요구사항 명세서 생성개념적 모델링논리적 모델링물리적 모델링개념적 모델링 분석 관점으로 사용자의 요구사항을 분석E-R 모델을 통해 개체/관계/속성으로 분류논리적 모델링설계 관점에서 개념적 모델을 충실히 변환특정 유형군의 DBMS을 염두에 두고 표현릴레이션 스키마의 테이블 구조로 표현됨물리적 모델링논리적 모델링의 연장선으로 물리적 구조를 표현특정 DBMS의 특성과 구조에 적합하게 물리적 데이터 구조 명세최적화된 테이블 레코드 형식, 저장구조, 접근 방식 명세==> 좋은 데이터 베이스 설계는요구사항을 충실히 만족데이터의 일관성과 무결성 유지최적의 성능을 발휘2. 실습1. 요구사항 명세- 모든 DevOps팀원들은 식물에 물을 준다.- .. 2024. 4. 25.
#03. 뷰와 인덱스 (정의, 사용법) [[_TOC_]]1. VIEW (뷰)VIEW(뷰)란?SELECT문 사용 시에 "자주" 사용되거나, "복잡한" 조인 조건인 경우,사용의 편의를 위해 생성하는가상의 테이블1-1. 뷰의 정의테이블과 뷰의 차이테이블 : 전체 조직의 관점에서 최적의 저장 단위로 생성뷰 : 개인의 관점에서 사용자의 편의를 위해 자유롭게 생성특징실제 데이터를 저장하지 않는 "가상 테이블"실제 테이블처럼 사용하도록 만든 "데이터베이스 객체"뷰는 데이터를 저장하지 않음주로 기반 테이블로부터 정의되지만, 또 다른 뷰를 기반으로 정의될 수 있음뷰 검색은 실제로는 뷰의 기반 테이블에 대한 검색으로 변환되어 수행된다.=> 생성된 뷰의 데이터는 snapshot처럼 소정된 값이 아닌,기반 테이블의 변경되는 정보를 실시간으로 반영하여 변경된다.뷰 .. 2024. 4. 25.
#02. RDMS 관계형 데이터(구조, 키의 종류), 관계대수(관계대수 연산) 3. 관계형 데이터데이터 구조 : 릴레이션 => 데이터의 정적 특성연산 : 관계 대수 => 행위적인 동적 특성제약 조건 : 무결성 제약 조건 => 구조적 제약/행위적 제약3-1. 관계형 데이터 구조릴레이션 : 2차원 테이블 형태관계형 데이터 모델은 테이블을 '릴레이션'이라고 부름릴레이션 스키마 : 테이블 명 + 속성명 (키 값은 밑줄로 표시)ex) 학생(학번, 이름, 성별, 학과)릴레이션 인스턴스 : 튜플들로 구성ex) {,}데이터 베이스의 구성데이터 스키마 => 데이터 베이스 안의 모든 릴레이션 스키마의 집합 (정적)데이터 인스턴스 => 특정 시점에서의 모든 릴레이션 인스턴스들의 집합 (동적)3-2. 제약 조건데이터 신뢰성 & 정합성을 유지하기 위해 제약 조건 명세릴레이션의 키(key) : 각 튜플들을.. 2024. 4. 25.
#01. 데이터베이스 개념 및 데이터베이스 시스템 (+DBMS) [[_TOC_]] 1. 데이터베이스 개념 1-1. 데이터베이스의 등장 파일 시스템 데이터 베이스 이전에는 파일 시스템을 사용 파일 시스템 : 응용프로그램마다 서로 다른 데이터파일 사용 ex) 수강신청 응용 프로그램 수강신청 데이터파일 성적처리 응용 프로그램 성적처리 데이터파일 졸업사정 응용 프로그램 졸업사정 데이터파일 파일 시스템의 문제점 데이터 종속성의 증가 - 파일 변경 시, 응용 프로그램의 파일처리코드 변경 필요 데이터 중복성의 증가 - 수강신청 데이터파일과 성적처리 데이터파일에 겹치는 데이터가 존재할 수 있으며, 데이터 일관성과 무결성의 유지가 어렵다 데이터 시스템의 등장 데이터베이스 시스템 : DB + DBMS DBMS 데이터베이스 관리 시스템 : 응용프로그램에서 DB에 접근할 수 있도록 해주는.. 2023. 8. 9.
[DB] ERD / 다대다 관계 (many-to-many relation) - 교차 엔티티 Association Entity 다 대 다 관계(many-to-many relation) : 多 대 多 관계는 Association Entity - 교차 엔티티를 생성하여, 해소한다 * 논리에서는 entity / 물리에서는 table이라고 주로 부른다. > 고객과 상품은 다 대 다 관계이다 ex) 아이유 고객은 0 or 1 or 다수의 상품을 가질 수 있다 갤럭시노트라는 상품은 0 or 1 or 다수 회원에게 판매 될 수 있다 이 경우 교차엔티티==교차릴레이션==Association Entity 를 적용해 고객과 상품의 일반정보 외의 고객과 상품의 교차(연관)정보를 저장하는 테이블(=교차 엔티티)을 별도로 만든다 고객일반정보 ----0||0---- 상품일반정보 위의 설계에서 특징적인 부분은 판매연관정보는 ①고객아이디를 참조(FK 외래키.. 2020. 10. 12.
[DB] DataBase Normalization 데이터베이스 정규화, 복합기본키 정규화란? : 정규화(Normalization)란 불필요한 데이터의 중복을 제거하여 데이터모델을 구조화하는 것이다. 1) 효율적인 자료 저장 및 데이터 무결성을 보장하고, 2) 오류를 최소화하여 안정성을 보장하기 위해, 테이블을 분해하는 과정이다. * 참고 ) 반정규화 : 시스템 성능 향상, 개발 및 운영 편의성을 위해 정규화된 모델을 통합, 분할하는 과정으로, 의도적으로 정규화 원칙을 위배하는 행위이다. [순서] > 제1 정규화 : 복수의 속성값을 갖는 속성(column)을 분리 = 도메인(=데이터)이 원자값으로! ex) 상품 주문서에서 주문 상품의 상품명, 상품 상세 내역 등이 복수로 입력되어서는 안 된다. → '주문'과 '주문 상세'로 분리 > 제2 정규화 : 주 식별자에 완전 종속되지 않는 속성을.. 2020. 9. 23.
[DB] 13. 기본 SQL 8 - date 타입 (sysdate 키워드) DATE 타입 : 데이터베이스의 시간 (년, 월, 일, 시, 분, 초)을 관리하는 타입 [ 주요 키워드 ] sysdate : 현재 시간을 표현하는 키워드 > dual 테이블을 이용해서 현재 시간을 조회 *dual 테이블 : oracle에서 제공하는 기본 테이블 SELECT sysdate FROM dual; [ 주요 함수 ] 1. TO_CHAR( [시간정보] , [format] ) : 원하는 시간 포맷을 설정해 문자열로 반환받는 함수 2. TO_DATE( [시간정보] , [format] ) : 문자형 데이터를 DATE형으로 변환 * 웹 어플리케이션에서 시간 정보를 전달받아 DB에 저장하기 위해 주로 사용된다. [ 시간 format 종류 ] YYYY : 연도 (4글자 단위로 반환) YY : 2글자 단위로 연.. 2020. 9. 4.
[day_07] DB / 12. 기본 SQL 7 - JOIN 조인 (inner join, outer join, cross join, self join) JOIN : 두개 이상의 테이블 간의 정보를 결합하기 위한 SQL 문법 1. Inner Join 이너조인 : 조인하고자 하는 두개의 테이블에서 공통된 요소들을 통해 결합하는 조인 방식 : 값이 일치하는 행을 반환 [ 생성 문법 ] > TSQL 방법 SELECT 별칭.컬럼명, 별칭.컬럼명, 별칭.컴럼명 FROM 테이블명 별칭, 테이블명 별칭 WHERE 별칭.컬럼명 = 별칭.컬럼명 —> 조인조건 > ANSI SQL 방법 SELECT 별칭.컬럼명, 별칭.컬럼명, 별칭.컴럼명 FROM 테이블명 별칭, 테이블명 별칭 JOIN 테이블명 별칭 ON 별칭.컬럼명 = 별칭.컬럼명 —> 조인조건 JOIN 테이블명 별칭 USING (컬럼명)—> 조인조건 * 조인 이용 시에는 별칭을 권장. 각 테이블에 컬럼명이 중복될 수 있.. 2020. 8. 13.
[day_06] DB / 11. ERD (Entity Relationship Diagram) - Foreign Key 외래키 ERD (Entity Relationship Diagram) : 개체 관계 모델링, 관계형 데이터 베이스 설계를 위한 다이어그램 논리 데이터 모델링 - 논리적인 데이터 관리 및 관계를 정의한 모델 - 전체 업무 범위와 업무 구성요소를 확인할 수 있다. ​ 물리 데이터 모델링 - 논리 데이터 모델을 DBMS의 특성 및 성능을 고려하여 구체화시킨 모델을 말한다. 정규화 (Normalization) : 데이터베이스 설계 시 중복을 최소화하도록 데이터를 구조화하는 작업 사례 ) 사원정보를 저장하는 테이블 설계 사원번호 사원명 직종 월급 부서명 부서지역 부서대표번호 1 아이유 개발 1000 연구개발부 판교 0311231234 2 김수민 개발 2000 공공사업부 광화문 024321321 위와 같은 형태로 테이블을 .. 2020. 8. 13.
728x90
반응형