더북(TheBook)

Self-Check

1. 다음과 같은 구조의 테이블을 생성해 보자.

- 테이블 : ORDERS
- 컬럼   : ORDER_ID      NUMBER(12,0)
           ORDER_DATE    DATE
           ORDER_MODE    VARCHAR2(8 BYTE)
           CUSTOMER_ID   NUMBER(6,0)
           ORDER_STATUS  NUMBER(2,0)
           ORDER_TOTAL   NUMBER(8,2)
           SALES_REP_ID  NUMBER(6,0)
           PROMOTION_ID  NUMBER(6,0)
- 제약사항 : 기본키는 ORDER_ID
             ORDER_MODE에는 'direct', 'online'만 입력가능
             ORDER_TOTAL의 디폴트 값은 0

 

2. 다음과 같은 구조의 테이블을 생성해 보자.

- 테이블 : ORDER_ITEMS
- 컬럼   : ORDER_ID NUMBER(12,0)
           LINE_ITEM_ID NUMBER(3,0)
           PRODUCT_ID   NUMBER(3,0)
           UNIT_PRICE   NUMBER(8,2)
           QUANTITY     NUMBER(8,0)
- 제약사항 : 기본키는 ORDER_ID와 LINE_ITEM_ID
                 UNIT_PRICE, QUANTITY 의 디폴트 값은 0

3. 다음과 같은 구조의 테이블을 생성해 보자.

- 테이블 : PROMOTIONS
- 컬럼   : PROMO_ID     NUMBER(6,0)
          PROMO_NAME   VARCHAR2(20)
- 제약사항 : 기본키는 PROMO_ID

4. FLOAT형은 괄호 안에 지정하는 수는 이진수 기준 자릿수라고 했다. FLOAT(126)의 경우 126 * 0.30103 = 37.92978이 되어 NUMBER 타입의 38자리와 같다. 그런데 왜 0.30103을 곱하는지 설명해 보자.

5. 최솟값 1, 최댓값 99999999, 1000부터 시작해서 1씩 증가하는 ORDERS_SEQ라는 시퀀스를 만들어 보자.

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