ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 데이터 베이스 기초 - 기본키, 후보키, 대체키, 외래키, 테이블, 상속, 관계의 표현
    전공 - IT/데이터베이스 2023. 4. 8. 00:19

    기초 용어

    슈퍼키란 대상을 구분할 수 있는 키들을 말하며 단일키와 복합키로 범위가 넓다

    후보키란 기본키가 될 수 있는 단일 키들을 말한다

    기본키는 사용자가 설정하는 것이고 후보키인 학번과 주민번호 중에서 정하는 것이다

    대체키는 기본키를 사용하지 못한다게 된다는 일이 발생하였을 경우 기본키를 대체하여서 사용할 수 있는 키를 말한다
    ( 반장이 자리 비웠을때 부반장이 반을 대표하는 역할 )

    외래키란 학생테이블에 있는 학과 코드에 대한 정보가 부족하고 학과 테이블의 학과 코드와 내용이 같기 때문에
    학과 테이블에서 기본키인 학과코드를 참고하여 학생테이블에서 학과코드를 외래키로 설정할 수 있다

     

    학생테이블에서 기본키, 속성, 튜블에 대한 정보는 위 사진에 색으로 구분해 놓았다

    학생테이블에서 학번, 이름, 학년, 학과 중에서 1개를 골라 누구인지 알 수 있게 해 주는 것은 학번이기에 학번이 기본키이다

    스키마는 구조를 말하는 것이어서 학번, 이름, 학년, 학과 가 포함이 된다

    도메인은 한 속성에 나타날 수 있는 속성 범위이고 학년을 예로 든다면 1학년부터 3학년까지 범위를 정할 수 있다

     

    위 그림은 상속관계를 그린 것이고 대학생,  직장인, 자영업 3가지 모두 수강생과 부모 자식의 관계이다

    ISA 옆에 괄호로 추가적인 정보를 적을 수 있는데 4가지의 내용은 아래와 같다

    Disjoint  :  상위개체는 하나의 하위개체에만 포함될 수 있다

    Overlapping  :  상위개체는 여러 하위개체에 포함 될 수 있다

    Total  :  상위개체는 하위개체에 속할 수 있다

    Partial  :  상위개체는 하위개체에 속하지 않을 수 있다

     

     

    위 4가지의 형태 모두 같은 내용을 말하지만 그려지는 형태가 다르다

    맨 위에 학생 - 수강 - 과목 의 그림에 동그라미와 네모를 연결해주어야 하는데 빼먹었다

     

    이 사진 역시 네모와 동그라미의 연결을 빼먹었다

    여기서 중요한 것은 여러 명의 학생이 1개의 학과에 소속이 되어있는 관계를 나타내고 있다는 것이다

     

    위 사진과 같이 테이블을 여러 개로 쪼개는 방법도 있다

     

     


    1번  →  왼쪽 오른쪽 모두 1개씩 필수로 있어야 함


    2번  →  왼쪽은 1개 필수, 오른쪽은 0~1개 선택


    3번  →  왼쪽은 1개 필수, 오른쪽은 여러 개



    4번  →  왼쪽은 1개 필수, 오른쪽은 1개 이상

     

    5번  →  왼쪽은 1개 필수, 오른쪽은 0개 이상

     

    왼쪽과 같은 표시는 1개가 필수적이라는 의미이다

    오른쪽에 동그라미 기호는 옵션이어서 있어도 되고 없어도 돼서 선택하면 된다

    그리고 < 모양은 여러 가지라는 의미이다

     

    728x90
Designed by Tistory.