본문 바로가기
728x90
반응형

Database12

트랜잭션 트랜잭션(Transaction)이란, 질의(query)를 하나의 묶음 처리해서 만약 중간에 실행이 중단되면 처음부터 다시 실행하는 Rollback을 수행하고, 오류없이 실행을 마치면 Commit을 하는 실행 단위 한 번 질의가 실행되면 질의가 모두 수행되거나 모두 수행되지 않는 작업수행의 논리적 단위이다. 예를 들어, 친구에게 인터넷 뱅킹으로 만원을 송금한다. 나의 계좌에서 만원을 줄이고, 친구의 계좌에 만원을 증가시켜야 한다. 오류로 인하여 나의 계좌에서는 만원이 줄었는데, 친구의 계좌에서는 증가되지 않으명 어떻게 될까? 이러한 경우가 생기지 않게 하기 위해 중간에 오류가 발생하면 다시 처음부터 송금하도록 하는 것이 바로 Rollback 이다. 즉 송금 과정 전체를 하나의 트랜잭션이라고 볼 수 있다. .. 2019. 4. 25.
SQL 데이터 조작문 DML 데이터 검색 - 기본 구조 SELECT 열_리스트 FROM 테이블_리스트 WHERE 조건; EX) SELECT Sname, Sno FROM STUDENT WHERE Dept = '컴퓨터'; 결과는 똑같은 쿼리문이 있다. SELECT STUDENT.Sname, STUDENT.Sno FROM STUDENT WHERE STUDENT.Dept = '컴퓨터'; 폐쇄 시스템(closed system) 테이블 처리 결과가 또 다시 테이블이 되는 시스템 중첩 질의문(nested query)을 구성할 수 있는 이론적 기초 SQL과 이론적 relational model의 차이점 - SQL의 테이블 한 테이블 내에 똑같은 레코드(행) 중복 가능(기본키가 없어도 되고 그래서 중복이 허용) 기본 키를 반드시 가져야 하는.. 2019. 4. 19.
테이블의 제거와 변경 기본 테이블의 제거 - 일반 형식 DROP TABLE 기본_테이블_이름 { RESTRICT | CASCADE } ; •RESTRICT: 참조하는 뷰나 제약조건이 있으면 실행 실패 •CASCADE: 참조 뷰나 제약조건도 모두 삭제 EX) DROP TABLE COURSE CASCADE; 스키마 제거 - 일반 형식 DROP SCHEMA 스키마_이름 { RESTRICT | CASCADE }; 기본 테이블의 변경 - 일반 형식 ALTER TABLE 기본_테이블_이름 ([ADD 열_이름 데이타_타입] [DEFAULT 기정의 값] | [DROP 열_이름] [CASCADE] | [MODIFY 열_이름 데이타_타입 (DROP DEFAULT | SET DEFAULT 기정의 값)]); employee(eno,ename,de.. 2019. 4. 17.
SQL SQL의 의미(structured query language) - 구조화 질의어 - 종합 데이터베이스 언어 역할 단순히 검색만을 위한 데이터 질의어가 아님 - 데이터 정의어(DDL),데이터 조작어(DML),데이터 제어어(DCL)의 기능 모두 제공 SQL의 특징 - 관계 대수 + 확장된 튜플 관계 해석 기초 - 고급, 비 절차적 데이터 언어 사용자 친화적인 인터페이스 제공 - 응용 프로그램에 삽입된 형태로도 사용 가능 - 관계 모델의 공식 용어 대신 일반 용어를 사용 릴레이션 - 테이블, 튜플 - 행, 애트리뷰트 - 열 SQL 데이터 정의문(DDL) - 스키마(SCHEMA) 하나의 사용자에 속하는 테이블과 기타 구성 요소 등을 그룹짓기 위한 것 CREATE SCHEMA 스키마명 AUTHORIZATION 사.. 2019. 4. 17.
관계 대수의 확장 세미 조인(Semijoin) - S와 자연 조인이 가능한 R의 튜플의 집합 - 특징 외부 조인(Outerjoin) - 한 릴레이션에 있는 튜플이 조인할 상대 릴레이션에 대응되는 튜플이 없을 경우, 상대를 null 튜플로 만들어 결과 릴레이션에 포함시킨다. - 누락 정보를 처리하기 위한 조인의 확장 - 두 조인 릴레이션의 튜플들이 전부 결과 릴레이션에 포함됨 "외부 조인을 수행하면, 두 릴레이션에 있는 모든 튜플들이 결과 릴레이션에 모두 포함되게 된다." 외부 합집합(Outer-union) - 합병 가능하지 않은 두 릴레이션의 모든 애트리뷰트를 포함하는 확장된 릴레이션으로 만듬 - 확장된 릴레이션에 해당하는 애트리뷰트 값이 없을 때는 널 값으로 채움 집계 연산 - 기본적인 관계 연산만으로는 원하는 릴레이션.. 2019. 4. 16.
순수 관계 연산자(조인,디비전) 조인(Join) 관계형 데이터베이스에서 중복 데이터를 피하기 위해 데이터를 쪼개서 여러 테이블로 나눠서 저장 분리되어 저장된 데이터에서 원하는 결과를 뽑기위해선 여러 테이블을 조합해야 합니다. 동일 조인(Equijoin) - 세타 조인에서 θ가 "="인 경우 자연 조인(Natural join ) - 동일 조인의 결과에서 중복되는 애트리뷰트를 제거 - 일반적으로 조인이라 하면 자연 조인을 의미 디비전(Division: ÷) - 릴레이션 R(X), S(Y) 에 대하여 Y ⊆ X이고 D = X-Y라고 하면 R(X) = R(D,Y) - 즉, S(Y)의 모든 튜플에 연관되어 있는 R[Z]의 튜플을 선택하는 것이다. - 모든 S에 대해서 R쪽에 모든 S에 대한 t가 다 있어야 한다. - 학과목(SC) , 과목1(C.. 2019. 4. 16.
순수 관계 연산자 순수 관계 연산자 릴레이션 : R(X) = R(A1, ... , An) R의 튜플 : r : R={r | r = } - ai : 투플 r에 대한 애트리뷰트 Ai의 값 - ai = r.Ai = r[Ai] 일반적으로... " = = r[A1, A2, … An] = r[X]" 실렉트 SELECT(s:sigma) 실렉트의 결과는 선택 조건을 만족하는 릴레이션의 수평적 부분 집합 교환 법칙 성립 "R(한 테이블)이 들어오고 A에서 어떤 v값과 비교해서 만족하는 튜플들만 뽑아내라" ex) s이름=‘홍길동’(학생) 선택도(selectivity) : 선택조건에 의해 검색되는 튜플의 비율 선택도가 낮은 인덱스를 확인하면 검색이 빠르다. "학생 테이블에서 이름 필드로 셀렉트.. 2019. 4. 15.
728x90
반응형