CS 필기 노트/DB(4)
-
데이터베이스 트랜잭션
트랜잭션의 정의 - 상태를 일관적으로 유지하기 위한 병행 수행 제어 및 회복의 단위 - 하나의 트랜잭션은 완료(COMMIT)되거나 복귀(ROLLBACK) 되어야 한다. COMMIT : 트랜잭션 실행이 성공적으로 완료되었음을 알리는 연산 수행된 결과들이 물리적 디스크로 저장된다. ROLLBACK : 트랜잭션 실행이 실패하였음을 선언하는 연산 수행한 결과를 원래 상태로 되돌린다. 특성 원자성 : 트랜잭션의 연산은 모두 반영하던지 아니면 전혀 반영되지 않아야 한다. (All or Nothing) A가 수행되는 동안 B는 A가 지금까지 수행한 중간 결과를 참조할 수 없다. 일관성 : 트랜잭션 실행 후 DB의 상태는 무결성이 유지되고, 모순되지 말아야 한다. 시스템이 가지고 있는 요소는 트랜잭션 전과 후 결과가 ..
2020.10.14 -
데이터 정규화와 무결성
무결성 도메인 무결성 속성에 관련된 무결성으로 데이터 형태, 범위, 유일성 등을 제한한다. 가장 기본적인 무결성 조건으로 속성은 도메인 영역 내에 있어야 한다. 개체 무결성 하나의 릴레이션에서 기본 키와 관련된 무결성이다. 기본 키는 NULL이나 중복 값을 가질 수 없다. 참조 무결성 기본키와 외래 키가 관련된 무결성이다. 참조 할 수 없는 외래 키 값을 가질 수 없다. 키의 무결성 한 릴레이션에는 최소한 하나의 키가 있어야 한다는 무결성. 고유 무결성 특정 속성에 대해 고유한 값을 가지도록 조건이 주어진 경우, 그 속성값은 모두 달라야 한다는 무결성. 데이터 정규화 목적 - 데이터 구조 안정성 최대화, 중복 최소화 - 수정 및 삭제 이상 현상 최소화, 불일치 위험 간소화 이상 현상 삽입 이상 : 데이터..
2020.10.13 -
스키마 구성과 DB 설계 단계
3단계 스키마 외부 스키마 사용자나 응용 프로그래머가 각 개인의 입장에서 필요로 하는 db의 논리적 구조를 정의한다. 데이터베이스와 사용자 간 중개 역할을 담당한다. 개념 스키마 기관이나 조직체의 범기관적 관점에서 데이터베이스를 정의한다. 설계 시 요구 분석 단계에서 ER다이어그램과 같은 DBMS에 독립적이고 고차원적인 표현 기법으로 기술한다. 내부 스키마 물리적 저장 장치의 데이터베이스 구조이다. 실제 저장될 레코드의 형식을 정의하고, 물리적 순서 등을 나타낸다. 데이터베이스 설계 단계 1. 요구조건 분석 데이터베이스 범위, 명세서 작성, 정보 수집과 변환을 하는 단계 2. 개념적 설계 정보의 구조를 얻고 추상적으로 개념을 표현하는 단계로, 요구 조건 명세를 바탕으로한 추상적 ERD를 작성한다. 3. ..
2020.10.13 -
데이터베이스 용어 정리 (테이블, 키, DB언어)
맨날 까먹어서 만드는 DB 용어정리 스키마 : 데이터베이스를 구성하는 개체, 속성, 관계를 전반적으로 기술한 것 릴레이션 (=테이블) : 관계형 데이터 베이스에서 정보를 구분하여 저장하는 기본 단위. 튜플(=레코드) : 테이블에서의 행을 의미하며 같은 값을 가질 수 없다. 튜플의 개수 -> 카디널리티 어트리뷰트(=필드, =디그리) : 테이블에서의 열을 의미함. 후보키 (Cardidate Key) : 기본키로 사용할 수 있는 속성들, 유일성과 최소성을 만족한다. 기본키 (Primary Key) : 후보키 중 선택한 메인키로 한 릴레이션에서 튜플을 구별하는 키이다. 중복될 수 없음 슈퍼키 (Super Key) : 한 릴레이션 내의 속성들의 집합으로 이루어진 키로, 유일성은 만족시키나 최소성은 아니다. 외래키..
2020.10.13