더북(TheBook)

BETTER WAY 4 컬럼당 하나의 특성만 저장하자

관계형 용어에서 관계(테이블)는 오직 한 주제나 액션만 기술해야 한다. 속성(컬럼)은 관계로 정의된 주제를 기술하는 유일한 특성(종종 ‘원자성’ 데이터라고도 한다)과 관련된 데이터를 포함한다. 또 속성은 다른 관계의 속성을 포함하는 외래키가 될 수 있고, 이 외래키는 다른 관계에 있는 일부 튜플(로우)과 연관성을 제공한다.

단일 컬럼에 특성 값을 두 개 이상 저장하는 것은 좋은 생각이 아니다. 이렇게 하면 검색을 하거나 값을 집계할 때 특성 값을 분리하기가 어렵기 때문이다. 중요한 개별 특성은 자체 컬럼에 넣는 것을 고려해야 한다. 표 1-1은 컬럼에 여러 특성이 포함된 테이블의 예를 보여 준다(이 샘플 데이터에 있는 주소는 실제 주소지만, 저자들의 주소는 아니다).

▼ 표 1-1 여러 컬럼에 여러 속성이 있는 테이블

AuthID

AuthName

AuthAddress

1

John L. Viescas

144 Boulevard Saint-Germain, 75006, Paris, France

2

Douglas J. Steele

555 Sherbourne St., Toronto, ON M4X 1W6, Canada

3

Ben Clothier

2015 Monterey St., San Antonio, TX 78207, USA

4

Tom Wickerath

2317 185th Place NE, Redmond, WA 98052, USA

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.