본문 바로가기
SQLD

[SQLD] 1.3. 속성

by Point-Nemo 2025. 5. 11.

1.3.1. 속성의 개념

속성(Attribute)이란 엔터티에 대한 자세하고 구체적인 정보를 나타낸 것으로 엔터티의 하위요소이다. 

속성은 엔터티를 나타내는 특징 중에서 업무와 관계되어 필요한 것들로 정의한다.

- 사원이라는 엔터티의 속성으로는 사원명, 직급, 직책, 주소, 연락처등이 있다.

- 속성은 의미상으로 더이상 분리되지 않는 최소의 데이터 단위이다.


1.3.2. 속성값

속성 자체는 자신이 가질 수 있는 속성값들의 집합이라고 할 수 있다. 즉, 속성값이란 속성이 가질 수 있는 특정 값을 말하며 하나의 엔터티 인스턴스가 가진 속성의 구체적인 값을 말한다.하나의 엔터티 인스턴스에서 각각의 속성은 한 개의 속성값만을 가져야 한다. 또한, 속성값이 의미적으로 다중 값을 포함하고 있을 떈 1차 정규화를 수행해야 한다.

 

엔터티 - 학생

속성 - 이름

속성값 - 홍길동

인스턴스 - 데이터를 표로 만들었을 때 행의 개수와 같음 (학생이라는 엔터티 안에서 몇 명의 데이터가 검출 됐는지)


1.3.3. 엔터티, 인스턴스, 속성값

- 한 개의 엔터티는 두 개 이상의 인스턴스를 가진다. (ex. 학생이라는 엔터티에서 개별 2명 이상의 데이터가 나타나야함)

- 한 개의 엔터티는 두 개 이상의 속성을 가진다. (ex. 학생이라는 엔터티에서 이름, 학번 등과 같은 두 개 이상의 속성이 나타나야함)

- 한 개의 속성은 한 개의 속성값만 가진다. (ex. 어떤 학생의 이름이 홍길동이면서 이몽룡이면 안 됨 )


1.3.4. 속성의 분류

1. 속성의 특성에 따른 분류

- 기본 속성: 엔터티가 본래부터 가지고 있어야 하는 속성

- 설계 속성: 엔터티가 본래부터 가지고 있던 속성은 아니지만 설계 시 필요하다고 판단되어 도출된 속성

- 파생 속성: 다른 속성으로부터 계산되거나 특정 규칙에 따라 변형되어 만들어진 속성

 

2. 속성의 구성방식에 따른 분류

- PK(Primary Key, 기본키) 속성: 해당 엔터티의 인스턴스를 유일하게 식별할 수 있는 속성

- FK(Foreign Key, 외래키) 속성: 관계를 통해 다른 엔터티의 속성을 가져와 포함시킨 속성

- 일반 속성: 키(PK or Fk)가 아닌 나머지 일반 속성


1.3.5. 도메인

속성이 가질 수 있는 값의 범위를 정의한 것.

 

일반적으로 도메인은 데이터 타입, 크기, 제약사항 등을 묶어 별도의 이름을 붙여 정의하며, 이렇게 정의된 도메인을 각각의 속성에 지정할 수 있다. 도메인이 지정된 속성은 해당 도메인의 데이터 타입, 크기, 제약사항 등을 따른다.

 

ex) 주문이라는 엔터티에서 단가라는 속성값의 범위는 10 ~ 1000 사이의 정수값이며, 상품명 속성은 30자리 이내의 문자열이다. 

'SQLD' 카테고리의 다른 글

[SQLD] 1.4. 관계  (1) 2025.05.12
[SQLD] 1.2. 엔터티  (5) 2025.05.11
[SQLD] 1.1. 데이터 모델링의 이해  (8) 2025.02.07