Page 13 -
P. 13
그렇다면 어떤 테이블을 몇 개나 만들면 좋을까요? 데이터 성격에 맞게 테이
블을 여러 개 만들고 이들 간의 관계를 결정하는 것을 데이터베이스 모델링
(Modeling)이라고 합니다. 모델링은 책 한 권 분량의 내용이고, 모델링을 어떻
게 하는가는 주어진 상황에 따라 천차만별입니다. 즉, 모델링은 정답이 없으며
구축하려는 데이터베이스 시스템의 성격에 따라 달라집니다. 또한, 별도의 모
델링 이론도 학습해야 합니다. 따라서 모델링에 대해서는 자세히 다루지 않고
필요한 경우에만 간략히 설명하겠습니다.
2.1.3 키(Key) 컬럼
RDBMS에서는 데이터 무결성을 확보하고자 테이블에 반드시 하나의 키가 되
는 컬럼을 두도록 권고하고 있습니다. 데이터 무결성(integrity)이란 무엇을 말하
는 걸까요? 한 마디로 데이터의 정확성을 보장해 올바른 데이터를 유지하는 것
을 의미합니다.
예를 들어 회원정보 테이블에는 동명이인이 여러 명 존재할 수 있습니다. 가령
홍길동이란 사람이 5명 있다고 하면 종로에 사는 홍길동인지 부산에 사는 홍길
동인지 이름만으로는 식별하기가 어렵습니다. 우연히 홍길동 2명이 서로 이웃
이라면 더욱 판별하기 어렵겠죠. 이름 컬럼에 홍길동으로 입력된 로우가 5건
존재하는 상황에서 특정 홍길동을 가려내야 할 때, 이런 역할을 하는 컬럼을 키
컬럼이라고 합니다.
좀 더 정확히 말하면 이를 기본 키(primary key)라고 하며, 테이블에서 특정 로
우 데이터를 식별할 수 있는 값을 가진 컬럼을 말합니다. 가령 어느 사이트에
회원가입을 하려면 아이디를 입력해야 하는데, 입력한 아이디가 사용 가능한지
체크하는 기능이 있습니다. 사용하려는 아이디가 이미 사용 중이라면 다른 아
이디를 입력해야 합니다. 즉, 해당 사이트 전체에서는 아이디가 유일한 값입니
다. 이 경우 아이디가 바로 키 컬럼 역할을 합니다.
2장 관계형 데이터베이스란? 25
누구나 쉽게 SQL(본문)최종.indd 25 2019-05-28 오후 5:08:44