본문 바로가기

📚Study Note/ORACLE

[ ORACLE ] 테이블 생성 시 주의할 점 관계/속성/튜플(엔티티)/도메인/릴레이션

문제되는 상황 1. 만약 강주혁이 다른 사원의 남편이라면? 
문.상 2. 관계가 '아버지' '부' '아빠' 다양하게 표현될 수 있음
문.상 3. 직급을 가지고 크기 비교될 수 있도록 해야 한다. EX)만약 주임이 있다면,,,?
            크기비교가 불가해짐

강조 첫번째 . 예측 가능한 데이터가 입력되는 상황이라면... → 코드화! (아버지, 부, 아빠 를 '부'로 통일)
     두번째 . 기존 컬럼을 통해 얻어낼 수 있는 데이터라면... → 컬럼으로 구성하지 않는다
     ------------------------------------------------
            판매일         판매상태
     ------------------------------------------------
        2021.04.05          판매완료(이미 판매일로 판별이 가능한 부분이라 필요없는 컬럼이다.)
        
    --------------------------------
    생년월일          나이
    --------------------------------
    -정말 문제되기 쉬운 부분
    
    
    ----------------------------------------------------------------------
    --※ 참고
    
    1. 관계(Relationship, relation)
    모든 엔트리(entry)는 단일값을 가진다.
    각 열 (column)은 유일한 이름을 가지며 순서는 무의미하다.
    테이블의 모든 행(row=튜플=tuple)은 동일하지 않으며 순서는 무의미하다.
    
    2. 속성(Attribute)
    - 테이블의 열(column)을 나타낸다.
    - 자료의 이름을 가진 최소 논리적 단위 : 객체의 성질, 상태 기술
    - 일반 파일(file)의 항목(아이템-item=필드=field)에 해당한다.
    - 엔티티(entity) 의특성과 상태를 기술
    - 속성(Atrribute)의 이름은 모두 달라야 한다,
    
    3. 튜플 = tuple =엔티티=entity
    - 테이블의 행(row)
    - 연관된 몇 개의 속성(attribute) 으로 구성
    - 개념 정보 단위
    - 일반 파일(file)의 레코드(record)에 해당한다
    - 튜플변수(tuple variable) 
    :튜플(tuple)을 가리키는 변수, 모든 튜플 집합을 도메인으로 하는 변수
    
    4. 도메인(domain)
    - 각 속성(attribute)이 가질 수 있도록 허용된 값들의 집합
    - 속성 명과 도메인 명이 반드시 동일할 필요는 없음
    - 모든 릴레이션에서 모든 속성들의 도메인은 원자적(atomic)이어야 함.
    -원자적 도메인.
    : 도메인의 원소가 더 이상 나누어질 수 없는 단일체일 때를 나타냄.
    
    5. 릴레이션(relation)
    - 파일 시스템에서 파일과 같은 개념
    - 중복된 튜플(tuple)을 포함하지 않는다.
    - 모두 상이함(튜플의 유일성)
    - 릴레이션 = 튜플(=entity = 엔티티)의 집합 따라서 튜플의 순서는 무의미하다.
    - 속성(attribute) 간에는 순서가 없다.


----------------------------------------------------------------------------------------