더북(TheBook)

표 4-2 내용 중 주요 컬럼을 간략히 살펴봅시다. 기본 키인 seq_id는 1부터 시작하는 일련번호 컬럼입니다. 모든 테이블에는 기본 키를 만들어야 하므로 일련번호 컬럼을 만든 것입니다. boarding_date 컬럼은 탑승일자로 DATE형으로 만들었고 gubun 컬럼은 ‘승차’와 ‘하차’를 구분하는 컬럼입니다. boarding_time은 탑승시간을 나타내는데, 가령 9시에서 10시 사이에 탑승했다면 9로 넣으려고 NUMBER형으로 만들었습니다.

이 테이블의 성격상 모든 컬럼에 데이터가 들어가는 게 맞지만, 기본 키 외에 다른 컬럼은 NULL 허용 컬럼으로 만들었습니다. 확률은 희박하지만, 데이터가 입력되지 않을 가능성을 염두에 둔 것이죠. 어떤 컬럼을 NULL 허용 컬럼으로 만들어야 하는지 잘 모르겠다면 기본 키 컬럼을 제외하고 모두 NULL 허용 컬럼으로 만드는 것이 좋습니다. 괜히 NOT NULL 컬럼으로 만들었다가 값을 입력하지 않으면 데이터 입력 시 오류가 발생해 난처해질 수 있기 때문입니다. 실제로도 이런 경우가 종종 있습니다.

자, 이제 테이블 생성 문장을 만들어 보세요. 표 4-2 내용을 참조하면 어렵지 않을 거예요. 만든 다음에는 쿼리 4-11과 비교해 보세요.

쿼리 4-11 subway_statistics 테이블 생성

CREATE TABLE subway_statistics (
     seq_id            NUMBER        NOT NULL,
     station_name      VARCHAR2(100)     NULL,
     boarding_date     DATE              NULL,
     gubun             VARCHAR2(10)      NULL,
     boarding_time     NUMBER            NULL,
     passenger_number  NUMBER            NULL,
     PRIMARY KEY ( seq_id )
);

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