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라는 시퀀스를 만들어 보자.