목록CS (73)
공부기록
트랜잭션의 정의 트랜잭션은 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위, 또는 한꺼번에 모두 수행되어야할 일련의 연산을 의미 ACID (Atomiticy, Consistency, Isolation, Durability) 성질을 가지는 데이터 베이스 연산의 나열 (Sequence)이다. Atomicity (원자성) 트랜잭션의 연산은 데이터베이스에 반영되도록 모두 완료 (Commit)되든지, 아니면 전혀 반영되지 않도록 복구(Rollback)되어야 한다. 트랜잭션 내의 모든 명령은 반드시 완벽히 수행되거나, 오류 발생시 모두 취소되어야 한다. Consistency (일관성) 트랜젝션이 commit되면 언제나 일관성 있는 데이터베이스 상태로 변환한다. 무결성 제약이 트랜잭션..
DML SQL select insert delete update select statements select from where group by having order by SQL Execution Model from where group by having select order by
DDL SQL 관계 및 이에 관련된 사양을 정의하는 기능을 제공 관계 스키마 속성의 도메인 무결성 제약 관계에 연관되는 인덱스 관계에 연관되는 보안 및 권한부여 관계 저장을 위한 디스크 상의 물리적 구조 CREATE, ALTER, DROP 무결성 제약 not null 널 값을 허용하지 않음 primary key 관계의 주키를 선언 foreign key 외래 키를 선언 Drop, Alter Table Drop 스키마 삭제 Alter 스키마 변경 Drop, Delete Drop 스키마 삭제 (DDL) Delete 튜플을 삭제 (DML)
데이터베이스 언어 기능적 관념에서 분류 DDL (Data Definition Language) DML (Data Manipulation Langauge) DCL (Data Control Language) 언어가 표현되는 방식에서 분류 Procedural Non-procedural (declaratvie) DDL 데이터베이스 스키마에 대한 조작을 담당 스키마 생성, 삭제, 변경을 담당 DBMS는 스키마에 대한 정보를 데이터 사전 (Data Dictionary)에 저장, 관리 DDL 실행 효과는 데이터 사전에 반영 DDL은 스키마에 관련되는 도메인, 데이터 제약 조건 등을 표현할 수 있는 기능을 제공 DML 데이터베이스 인스턴트를 조작하는 언어 인스턴스의 생성, 조회, 삭제, 변경 등의 기능을 제공 DML을..
추가 연산 기본 확장대수들을 사용하여 표현이 가능함 Assignment set intersection natural join outer join divison Assignment ← 중간 결과 표현을 임시로 저장 가능 Set Intersection r ∩ s 교집합 연산 Natural Join R ▷◁ S π r.A, r.B, r.C, r.D, s.E( σ r.B = s.B Λ r.D = s.D (r x s)) 자연 조인은 결합성과 교환성이 있다. 질의어 최적화 과정에서 사용된다. R ▷◁ (조건) S 세타 조인 : 범위 조건 동등 조인 : 동등 조건 자연 조인 : 동등 조인 중 조인 조건 속성이 조인 결과에 한번만 나오는 경우 Outer Join 외부조인은 연관되는 값이 없는 튜블도 결과 관계에 포함된..
관계 대수 절차적 언어이다. 6개의 기본 연산이 있다. select : σ project : π union : ∪ set difference : - Cartesian product : x rename : ρ 연산자들을 1개 또는 2개의 관계를 입력으로 받아 새로운 하나의 관계를 결과물로 생성한다. Select σ (조건)(관계의 이름) 관계에서 조건에 해당하는 튜플을 뽑아낸다. Project ∏(속성1, 속성2, ... 속성N)(관계의 이름) 관계에서 해당 속성만 뽑아 튜플을 구성 중복 튜플은 결과 관계에서 제거된다. Union (관계의 이름) U (관계의 이름) 두 관계는 터플의 속성개수가 동일하여야 하고, 대응되는 도메인인이 상호 호환적이어야 한다. 위의 제약은 교집합, 차집합 연산에도 동일하게 적용..
관계형 데이터 모델 데이터베이스를 관계(relation)와 무결성 제약사항의 집합으로 표현한다. 관계는 테이블 형식이다. 관계에는 속성와 튜플이 있다. 각 속성은 속성헤드를 가진다. 모든 속성 값은 원자값이어야 한다. 원자값은 더이상 분해할 수 없다는 값이란 뜻이다. 정수, 실수, 문자, 문자열, 시간, 날짜 등이 원자값이다. 집합, 리스트, 복합값은 원자값이 아니다. 관계스키마 및 인스턴스 관계스키마는 관계 이름과 속성명 나열을 의미한다. 관계인스턴스는 관계스키마에 적절한 값의 조합을 말한다. Key 키는 속성의 집합으로 구성된다. 슈퍼 키는 관계에서 튜플을 유일하게 식별할 수 있는 속성의 집합이다. 후보키는 슈퍼키의 유일성 + 가장 작은 수의 속성으로 구성된 키이다. 주 키는 후보키들 중 선별된 하나..
인스턴스 및 스키마 인스턴스는 변수의 값에 대응 스키마는 변수의 타입에 대응 시간에 따라 인스턴스는 자주 변하는 반면 스키마는 자주 변하지 않는다. 데이터베이스 스키마 데이터 베이스의 논리적, 물리적 구조를 의미 구조를 기술하는 방법은 데이터베이스의 모델, 데이터베이스를 보는 높이에 따라 다르다. 데이터 추상화 레벨 물리적 레벨 record가 어떻게 물리적으로 저장되는지 기술 논리적레벨 저장된 데이터와 데이터간의 관계를 기술 뷰 레벨 특정한 사용자가 관심있어하는 부분만 기술 view -> logical -> physical 의 3단계로 추상화한다. 데이터 독립성 물리적 데이터 독립성은 논리적 데이터 스키마 변화 없이 물리적 스키마를 변화시킨다. 논리적 데이터 독립성은 뷰 스키마의 변화 없이 논리적 스키마..