티스토리 뷰

1.    릴레이션 ( relation )

 

-      릴레이션이란 행과 열로 구성된 테이블을 의미한다.

-      Relational이 관계를 의미하지, 릴레이션이 관계를 의미하지 않는다.

-      릴레이션은 하나의 집합이며, 집합은 순서를 보장하지 않으며 중복을 허용하지 않는다.

-      , 데이터베이스에서의 테이블은 행과 열의 순서를 보장하지 않는다.

-      또한 하나의 열은 하나의 집합이며, 테이블은 집합의 모임이다.

-      하나의 행은 각각의 집합에서 원소 1개씩 선택해서 만들어진 것으로 원소들이 관계를 맺고 있다.

-      Ex. 도서번호 = { 1,2,3,4,5 }

-      Ex. 도서이름 = { 축구의 역사, 축구아는 여자, 축구의 이해, 골프 바이블, 피겨교본 }


2.    관계 ( relationship )

 

-      1 ) 릴레이션 내에서 생성되는 관계 : 릴레이션(테이블) 내 데이터들의 관계

-      2 ) 릴레이션 간에 생성되는 관계 : 릴레이션(테이블) 간의 관계


3.    릴레이션 스키마와 인스턴스

 

-      테이블의 각각의 열을 속성이라고 하는데, 속성을 개수를 차수라고 부른다.

-      스키마는 이러한 속성의 모음을 말한다.

-      테이블의 각각의 행을 투플이라고 하는데, 투플의 개수를 카디널리티라고 한다.

-      인스턴스는 이러한 투플의 모음의 의미한다.

-      도메인은 속성이 가질 수 있는 값의 범위를 의미한다.

-      투플이 가지는 속성의 개수는 릴레이션 스키마의 차수와 동일하고, 릴레이션 내의 모든 투플들은 서로 중복되지 않아야 한다.

-      이때 중복은 투플이 가지는 모든 속성이 같아야 중복이다.

-      스키마의 표현방법 : 릴레이션의 이름(속성1: 도메인1, 속성2: 도메인2 …. )

-      Ex. 도서(도서번호, 도서이름, 출판사, 가격)


릴레이션 용어 같은 의미로 통용되는 용어
릴레이션 테이블
스키마 내포
인스턴스 외포
투플
속성

4.    릴레이션의 특징

 

-      1 ) 속성은 단일 값을 가진다.

-       : 각 속성의 값은 정의된 값만을 가져야 하며, 그 값은 모두 단일 값이어야 한다.

-      2 ) 속성은 서로 다른 이름을 가진다.

-       : 속성은 한 릴레이션에서 서로 다른 이름을 가져야 한다.

-      3 ) 한 속성의 값은 모두 같은 도메인 값을 가진다.

-       : 한 속성에 속한 열은 모두 그 속성에서 정의한 도메인 값만을 가질 수 있다.

-      4 ) 속성의 순서는 상관없다.

-       : 속성의 순서가 달라도 릴레이션의 스키마는 같다.

-      5 ) 릴레이션 내의 중복된 투플은 허용되지 않는다.

-      6 ) 투플의 순서는 상관없다.


5.    관계 데이터 모델

 

-      데이터를 2차원 테이블 형태인 릴레이션으로 표현한다.

-      릴레이션에 대한 제약조건과 관계연산을 위한 관계대수를 정의한다.

-      관계데이터 모델의 구성요소 : 릴레이션, 제약조건, 관계대수


6.   

 

-      특정 투플을 식별할 때 사용하는 속성 혹은 속성의 집합이다.

-      릴레이션은 중복된 투플을 허용하지 않기 때문에 각각의 투플에 포함된 속성들 중 어느 하나(혹은 하나 이상)는 값이 달라야 한다.

-      , 키가 되는 속성(혹은 속성의 집합)은 반드시 값이 달라서 투플들을 서로 구별할 수 있어야 한다.

-      키는 릴레이션 간의 관계를 맺는데도 사용된다.

 

-      1 ) 슈퍼키

-      슈퍼키에 후보키( 기본키 + 대체키 )가 포함된다.

-      슈퍼키는 투플을 유일하게 식별할 수 있는 하나의 속성 혹은 속성의 집합이다.

-      투플을 유일하게 식별할 수 있는 값이라면 모두 슈퍼키가 될 수 있다.

 

-      2 ) 후보키

-      투플을 유일하게 식별할 수 있는 속성의 최소 집합

-      + 릴레이션의 후보키가 2개의 속성을 합한 (고객번호, 도서번호)가 될 수 있는데, 이렇게 2개 이상의 속성으로 이루어진 키를 복합키라고 부른다.

 

-      3 ) 기본키

-      여러 후보키 중에서 하나를 선정하여 대표로 삼는 키이다.

-      후보키가 하나뿐이라면 그 후보키를 기본키로 사용하면 되며, 여러 개라면 릴레이션의 특성을 반영하여 하나를 선택해야 한다.

-      릴레이션 스키마를 표현할 때 기본키는 밑줄을 그어야 한다.

-      Ex. 릴레이션 이름(속성1, 속성2, …. 속성N)

-      Ex. 고객(고객번호, 이름, 주민번호, 주소, 핸드폰)

 

-      3-1 ) 기본키 선정 시 고려사항

-      1. 릴레이션 내 투플을 식별할 수 있는 고유한 값을 가져야 한다.

-      2. Null 값은 허용하지 않는다. ( Null = 값이 없다는 의미 )

-      3. 키 값의 변동이 일어나지 않아야 한다.

-      4. 최대한 적은 수의 속성을 가진 것이어야 한다.

-      5. 향후 키를 사용하는데 있어서 문제 발생 소지가 없어야 한다.

-       + , 기본키 = Unique(고유) + NOT NULL(NO 결측치)

 

-      4 ) 대리키

-      기본키가 보안을 요하거나, 여러 개의 속성으로 구성되어 복잡하거나 마땅한 기본키가 없을 때에는 일련번호 같은 가상의 속성을 만들어 기본키로 삼는 경우가 있다.

-      이러한 키를 대리키 혹은 인조키라고 한다.

-      대리키는 DBMS나 관련 소프트웨어에서 임의로 생성하는 값으로 사용자가 직관적으로 그 값의 의미를 알 수 없다.

-       + 의미를 부여하는 키는 대리키가 아니다. (ex. 운송장 번호)

 

-      5 ) 대체키

-      대체키는 기본키로 선정되지 않은 후보키를 의미한다.

 

-      6 ) 외래키

-      다른 릴레이션의 기본키를 참조하는 속성을 말한다.

-      다른 릴레이션의 기본키를 참조하여 관계 데이터 모델의 특징인 릴레이션 간의 관계(relationship)를 표현한다.

-      외래키 사용 시 참조하는 릴레이션과 참조되는 릴레이션이 꼭 다른 릴레이션일 필요는 없다.

-      , 자기 자신의 기본키를 참조할 수도 있다.

 

-      6-1 ) 외래키의 특징

-      1. 관계 데이터 모델의 릴레이션 간의 관계를 표현한다.

-      2. 다른 릴레이션의 기본키를 참조하는 속성이다.

-      3. 참조하고(외래키) 참조되는(기본키) 양쪽 릴레이션의 도메인은 서로 같아야 한다.

-      4. 참조되는(기본키) 값이 변경되면 참조하는(외래키) 값도 변경된다.

-      5. 외래키에서는 NULL값과 중복 값 등이 허용된다.

-      6. 자기 자신의 기본키를 참조하는 외래키도 가능하다.

-      7. 외래키가 기본키의 일부가 될 수 있다. ( , 기본키가 외래키를 포함한 복합키형태일 때에만 해당된다. )

-       + , 외래키 = 중복허용 + NULL허용


 

728x90
댓글
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
최근에 올라온 글
Total
Today
Yesterday
공지사항