Page 10 -
P. 10

그림 1-1 일관성 없는 데이터












                      컴퓨터 관점에서 그림 1-1을 본다면 모든 값이 유일한 것은 분명한 사실이

                      지만, 이들은 모두 같은 사람이거나 적어도 첫 번째와 두 번째, 네 번째 로우

                      는 동일한 사람(John A. Smith)일 수 있다. 컴퓨터는 사람보다 훨씬 빠르게 데
                      이터를 처리할 수 있지만, 상당한 양의 프로그래밍 없이는 언제 특정 데이터
                      를 동일한 것으로 간주해야 할지 판단하는 작업은 잘 처리하지 못한다. 따라

                      서 이 테이블에서는 Customer 컬럼을 기본키로 정의할 수 있는데, 유일한 값

                      을 가져야 한다는 요구 사항을 만족시키더라도 바람직한 선택은 아니다.

                      그렇다면 무엇이 기본키의 좋은 후보 자격이 될 수 있을까? 다음 특성을 따
                      르는 컬럼을 후보군으로 삼으면 된다.


                        ●   유일한 값을 가져야 한다.

                        ●   널 값을 가질 수 없다.
                        ●   안정적인 값이어야 한다(즉, 값을 갱신할 필요가 없다).
                        ●   가능한 한 간단한 형태여야 한다(예를 들어 문자나 부동소수점보다는 정수
                          형이 낫고, 여러 컬럼보다는 단일 컬럼이 낫다).


                      이런 목표를 달성하는 일반적인 방법은 의미 없는 숫자 데이터로 자동 생
                      성되는 컬럼을 기본키로 만드는 것이다. 관계형 데이터베이스 관리 시스템

                      (Relational DataBase Management System, RDBMS) 소프트웨어에 따라 이 컬럼은
                      여러 이름으로 칭하는데 DB2, SQL Server, 오라클 12c에서는 IDENTITY, 액






                                                                       1장  데이터 모델 설계  033




         SQL 코딩의 기술(본문)최종.indd   33                                            2017-11-15   오후 11:27:49
   5   6   7   8   9   10   11   12   13   14   15