SQLP
시험 직전 요약장
판단 기준과 헷갈리는 개념, 대표 예제를 짧게 확인하세요.
속성과 도메인: 값의 의미와 품질
원래 이론 →판단 기준
“계산하여 저장”, “합계·잔액·나이”는 파생 속성 가능성을 본다. “값의 범위·길이·형식”은 도메인, “원래 업무에서 수집”은 기본 속성, “식별을 위해 인위적으로 부여”는 설계 속성이다.
헷갈리는 개념
슈퍼타입은 여러 유형이 공유하는 속성과 관계를 모은 엔터티이고, 서브타입은 그중 특정 유형에만 필요한 속성과 관계를 가진 엔터티다. 구분자(Discriminator)는 슈퍼타입의 각 인스턴스가 어느 서브타입에 속하는지 나타내는 속성이다.
고객을 개인고객과 법인고객으로 구분한다고 하자. 고객번호·고객명은 공통이므로 고객 슈퍼타입에 두고, 생년월일은 개인고객, 법인등록번호는 법인고객 서브타입에서 관리한다. 고객의 customer_type이 구분자이며, 값 IND는 개인고객, CORP는 법인고객을 뜻한다.
표를 좌우로 밀어 나머지 열을 확인하세요. 키보드: ←·→, Home·End
| 고객번호(customer_id) | 구분자(customer_type) | 소속 서브타입 | 해당 유형의 속성 예 |
|---|---|---|---|
| 101 | IND | 개인고객 | 생년월일 |
| 102 | IND | 개인고객 | 생년월일 |
| 202 | CORP | 법인고객 | 법인등록번호 |
101과 102는 고객번호로 구별되는 서로 다른 고객이지만 같은 구분자 값 IND를 갖는다. 고객번호는 인스턴스 식별, 구분자는 유형 식별에 쓰인다. 서브타입을 별도 테이블로 구현하면 개인고객의 고객번호 101은 고객의 고객번호 101과 같은 고객을 가리키며, 일반적으로 서브타입 기본키이자 슈퍼타입을 참조하는 외래키가 된다.
내 최근 연습 오답
현재 브라우저의 연습 채점 기록에서 공개된 단원과 연결된 오답을 확인합니다.
오답 기록을 확인하고 있습니다.