코딩항해기
[DBMS/Oracle] 식별자 본문
식별자(Identifiers)
각각의 인스턴스를 구분가능하게 만들어주는 역할
[요약]
주식별자의 속성 : 유일성, 최소성, 불변성, 존재성
[식별자의 분류]
대표성 여부 | 주식별자 Primary Identifier |
보조식별자 Alternate Identifier | |
생성위치 | 내부식별자 Internal Identifier |
외부식별자 Foreign Identifier | |
단일속성의 여부 | 단일식별자 Single Identifier |
복합식별자 Composite Identifier | |
대체 여부 | 원조식별자 Original Identifier (본질식별자) |
대리식별자 Surrogate Identifier (인조식별자) |
주 식별자 (Primay key (기본키)) 속성
유일성 | 각 인스턴스에 유니크함을 부여하여 식별이 가능하도록 해야한다. (중복X) |
최소성 | 유일성을 보장하는 최소 개수의 속성이어야 한다. |
불변성 | 속성값이 되도록 변하지 않아야한다. |
존재성 | 속성값이 NULL이 될 수 없다. |
식별자 분류
분류 | 설명 | |
대표성 여부 | 주식별자 Primary Identifier | 유일성, 최소성, 불변성, 존재성을 가진 대표 식별자이다. 다른 엔터티와 참조 관계로 연결될 수 있다. |
보조식별자 Alternate Identifier | 인스턴스를 식별할 수 있지만 대표 식별자는 아니다. 다른 엔터티와 참조 관계로 연결될 수 없다. |
|
생성위치 | 내부식별자 Internal Identifier | 엔터티 내부에서 스스로 생성된 식별자이다. |
외부식별자 Foreign Identifier | 다른 엔터티에서 온 식별자로 다른 엔터티와의 연결고리 역할을 한다. | |
단일속성의 여부 | 단일식별자 Single Identifier | 하나의 속성으로 구성된 식별자이다. |
복합식별자 Composite Identifier | 두 개 이상의 속성으로 구성된 식별자이다. | |
대체 여부 | 원조식별자 Original Identifier (본질식별자) |
업무 프로세스에 존재하는 식별자로 가공되지 않은 원래의 식별자이다. |
대리식별자 Surrogate Identifier (인조식별자) |
주식별자의 속성이 두 개 이상인 경우 그 속성들을 하나로 묶어서 사용하는 식별자이다. |
식별자 관계와 비식별자 관계
식별자 관계 (Identification Relationship)
부모의 식별자가 자식의 주식별자가 되는 관계를 말한다.
부모 엔터티가 없다면 생성할 수 없다. (주식별자의 존재성 위반)
부모 식별자의 단일속성 여부에 따라 1:1인지, 1:M 관계인지가 정해진다.
비식별자 관계 (Non-Identification Ralationship)
부모의 식별자가 자식의 일반 속성이 되는 관계를 말한다.
일반 속성은 Null 지정이 가능하기 때문에 부모 엔터티 없이 생성이 가능하다.
부모 식별자를 가지고 있는 자식이 있더라도 부모 엔터티를 삭제 가능하다.
[출처] 2024 유선배 SQL 개발자 SQLD 과외노트
'DBMS > Oracle' 카테고리의 다른 글
[DBMS/Oracle] SELECT문 (+DISTINCT, AS, ORDER BY) (0) | 2024.07.27 |
---|---|
[DBMS/Oracle] 데이터 모델링 (0) | 2024.07.08 |
[DBMS/Oracle] 시퀀스 SEQUENCE (0) | 2024.07.07 |
[DBMS/Oracle] 무결성 (0) | 2024.06.24 |
[DBMS/Oracle] 시퀀스, 집계함수(GROUP BY, HAVING) (0) | 2024.06.21 |