더북(TheBook)

6.2 명시적으로 스키마를 정의하지 말자

관계형 데이터베이스를 사용해 봤다면 아마도 데이터베이스 스키마를 정의하는 것에 익숙할 것이다. 스키마란 테이블과 같은 객체의 구조를 정의하는 스펙을 말한다. 고객에 대한 의사스키마는 다음과 같다.


CREATE TABLE customer (
  customer_ID integer,
  name varchar(100),
  street varchar(100),
  city varchar(100),
  state varchar(2),
  zip varchar(5),
  first_purchase_date date,
  last_purchase_date date
)

이 스키마는 고객과 주소 정보를 가진 테이블을 정의한다. 모든 고객 레코드에는 같은 컬럼 여덟 개(customer_ID, name, street, city, state, zip, first_purchase_date, last_purchase_date)가 있다. 각 컬럼은 integer, date, varchar 같은 특정 데이터 타입으로 할당된다. Varchar는 가변문자열을 의미한다. Varchar 옆 괄호 안에 있는 숫자는 이 속성에 저장되는 값의 최대 길이를 뜻한다.

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