데이터베이스 시스템 개요 연구 노트-관계형 데이터베이스

관계형 데이터베이스

1. 관계형 데이터 구조 및 형식 정의

데이터 모델의 세 가지 요소에 따라 관계형 모델은 관계형 데이터 구조, 관계형 연산 집합 및 관계형 무결성 제약의 세 부분으로 구성됩니다 . 다음이 차례로 소개됩니다.

1.1. 관계

관계형 모델의 데이터 구조는 단일 데이터 구조 관계 만 포함하는 매우 간단 합니다. 사용자의 관점에서 관계형 모델 데이터의 논리적 구조는 평면 2 차원 테이블입니다. 관계형 모델은 대수를 기반으로합니다. 다음은 집합 이론의 관점에서 관계형 데이터 구조의 공식적인 정의입니다.

  • 지역

    도메인은 데이터 유형이 동일한 값의 집합입니다.

  • 데카르트 곱

    데카르트 곱은 도메인에 대한 집합 연산입니다.

    정의 : 도메인 세트 : D1, D2, ..., Dn이 주어지면 일부는 동일 할 수 있습니다.이 도메인 세트의 데카르트 곱은 다음과 같습니다.

D 1 ✖ D 2 ✖. . . ✖ D n = {(d 1, d 2,..., dn) ∣ di ∈ D i, i = 1, 2,. . . , n} D1✖D2✖ ... ✖Dn = \ {(d1, d2, ..., dn) | di∈Di, i = 1,2, ..., n \}D 1 D 2 . . . D N={ ( D 1 ;d 2 ,. . . ,d n ) d 나는D I ,나는=1 ,2 ,. . . ,n }

그 중에서도, 각 소자 (D1은, D2는, ..., DN)는 호출 N 튜플 또는 대한 터플 짧은 . 요소의 각 값 di를 구성 요소라고합니다. 도메인에 허용되는 서로 다른 값의 수를 도메인의 카디널리티 라고합니다 . 데카르트 곱은 2 차원 테이블로 표현할 수 있습니다. 테이블의 각 행은 튜플에 해당하며 테이블의 각 열 값은 필드에서 가져옵니다 .

  • 관계

    D1✖D2✖ ... ✖Dn의 하위 집합은 도메인 D1, D2, ..., Dn에 대한 관계라고하며 다음과 같이 표현됩니다. R (D1, D2, ..., Dn) . 여기서 R은 관계의 이름이고 n은 관계의 순서 또는 정도입니다.

    관계의 특정 속성 그룹 값이 튜플을 고유하게 식별 할 수 있지만 다른 서브 세트는 식별 할 수없는 경우 속성 그룹을 후보 코드 라고합니다 . 관계에 대한 후보 코드가 여러 개있는 경우 그중 하나를 기본 코드로 선택합니다 . 후보 코드의 속성을 기본 속성이라고합니다 . 후보 코드에 포함되지 않은 속성을 비 기본 속성 또는 비 코드 속성이라고합니다. 가장 간단한 경우 후보 코드에는 하나의 속성 만 포함됩니다. 가장 극단적 인 경우 관계형 패턴의 모든 속성은이 관계형 패턴의 후보 코드이며이를 전체 코드 라고 합니다.

    관계 유형에는 기본 관계 (일반적으로 기본 테이블 또는 기본 테이블이라고 함), 쿼리 테이블 및 뷰 테이블의 세 가지 유형이 있습니다. 기본 관계에는 다음과 같은 6 가지 속성이 있습니다.

    1. 열은 동종입니다. 즉, 각 열의 구성 요소는 동일한 유형의 데이터이며 동일한 도메인에서 제공됩니다.
    2. 동일한 도메인에서 다른 열을 가져올 수 있으며 각 열을 속성이라고하며 다른 속성에는 다른 속성 이름을 지정해야합니다.
    3. 열의 순서는 중요하지 않습니다.
    4. 두 튜플의 후보 코드는 같은 값을 가질 수 없습니다.
    5. 줄의 순서는 중요하지 않습니다.
    6. 구성 요소는 원자 값을 가져야합니다. 즉, 각 구성 요소는 분할 할 수없는 데이터 항목이어야합니다.

1.2, 관계 모델

유형과 값은 데이터베이스에서 구별되어야합니다. 관계형 데이터베이스에서 관계형 모델은 유형이고 관계는 값입니다. 관계 모델은 관계에 대한 설명입니다. 그 관계의 어떤 부분을 설명해야합니까?

정의 : 관계에 대한 설명을 관계 모델이라고합니다. 공식적으로 다음과 같이 표현할 수 있습니다. R (U, D, DOM, F)

그 중에서 R은 관계의 이름, U는 관계를 구성하는 속성 이름의 집합, D는 U의 속성이 시작되는 도메인, DOM은 속성에서 도메인으로의 매핑 집합, F는 속성 간의 종속성 집합입니다 .

1.3, 관계형 데이터베이스

관계형 모델에서 엔터티와 엔터티 간의 연결은 관계로 표시됩니다. 주어진 애플리케이션 도메인에서 모든 관계의 모음은 관계형 데이터베이스를 구성합니다 .

관계형 데이터베이스에는 유형과 값도 있습니다. 관계형 데이터베이스의 유형은 관계형 데이터베이스 모델이라고도하며 관계형 데이터베이스에 대한 설명입니다 . 관계형 데이터베이스의 값은 특정 순간에 이러한 관계형 패턴에 해당하는 관계의 모음이며 일반적으로 관계형 데이터베이스라고합니다 .


2. 관계 운영

2.1, 기본 관계 작업

관계형 모델에서 일반적으로 사용되는 관계형 작업에는 쿼리 작업과 삽입, 삭제 및 수정 작업이 포함 됩니다. 쿼리 연산은 선택, 투영, 연결, 나누기, 합집합, 차이, 교차, 데카르트 곱 등으로 나눌 수 있습니다. 그 중에서 선택, 투영, 합집합, 차이 및 데카르트 곱이 다섯 가지 기본 작업 입니다.

2.2. 관계형 데이터 언어의 분류

관계형 대수 언어 (ISBL), 관계형 계산 언어 : 튜플 관계형 계산 언어 (ALPHA, QUEL) 및 도메인 관계형 계산 언어 (QBE), 관계형 대수와 관계형 계산 (SQL)의 이중 특성을 가진 언어


3. 관계형 무결성 제약

3.1, 엔티티 무결성 제약

규칙 : 속성 (하나 또는 속성 그룹 참조) A가 기본 관계 R의 기본 속성이면 A는 null이 될 수 없습니다 .

3.2, 참조 무결성 제약

외부 코드. 규칙 : 속성 (또는 속성 그룹) F가 기본 관계 R의 외부 코드 인 경우 기본 관계 S의 기본 코드 K에 해당합니다 (기본 관계 R과 S는 반드시 다른 관계는 아닙니다), 각 R에 대해 F의 튜플 값은 다음과 같아야합니다.

  • 널값을 취하십시오.
  • 또는 S에있는 튜플의 기본 코드 값과 같습니다.

3.3, 사용자 정의 제약

관계형 데이터베이스에 대한 사용자 정의 제약 조건.


4. 관계형 대수

4.1, 전통적인 세트 작업

  • 가로 질러 가다
  • 데카르트 곱

4.2, 특수 관계형 연산

  • 고르다
  • 투사
  • 연결
    • 동등한 연결
    • 자연적 연결 : 두 관계에서 비교할 구성 요소가 동일한 이름을 가진 속성 그룹이어야하며 중복 된 속성 열이 결과에서 제거되어야하는 특수 등가 연결.
    • 외부 연결 : 자연 연결에서 버려진 튜플을 부동 조상이라고합니다. 부동 튜플도 결과 관계에 저장되고 다른 속성은 빈 값으로 채워집니다.
    • 왼쪽 외부 조인 : 부동 튜플 만 왼쪽 관계에 유지합니다.
    • 오른쪽 외부 조인 : 부동 튜플 만 올바른 관계로 유지합니다.
  • 나누기 : 코끼리 세트로 정의

5. 요약

  1. 관계 : 관계는 일반적으로 말한 테이블에 해당합니다
  2. 관계 모드 : 관계에 대한 설명
  3. 관계형 모델 : 관계형 모델은 관계형 데이터 구조, 관계형 연산 수집, 관계형 무결성 제약의 세 부분으로 구성됩니다.
  4. 관계와 관계 모델의 차이점
    1. 관계 모델은 유형, 관계는 값, 관계 모델은 관계에 대한 설명입니다.
    2. 관계는 특정 순간의 관계 모드의 상태 또는 내용입니다. 관계 모드는 정적이고 안정적이지만 관계 작업은 데이터베이스의 데이터를 지속적으로 업데이트하므로 관계는 동적이며 시간이 지남에 따라 변경됩니다.
    3. 객체 지향 프로그래밍에서 "클래스"와 "객체"의 차이점과 유사합니다. "관계"는 "관계 모드"의 예입니다. "관계"는 데이터가있는 테이블로 이해할 수 있으며 "관계 모드"는이 데이터 테이블의 테이블 구조입니다.
  5. 관계 모델과 관계의 차이점
    • 관계형 모델에는 관계가 포함됩니다. 관계는 관계형 모델의 데이터 구조입니다. 관계형 모델에서 실제 엔터티와 엔터티 간의 모든 연결 수준은 관계라는 단일 구조 유형으로 표현됩니다.

추천

출처blog.csdn.net/qq_36879493/article/details/108292023