본문 바로가기
SQL

SQL 강의 SQLP SQLD 기출 문제 - 001 / INSERT, PRIMARY KEY, NOT NULL 제약 조건

by SQL Master 2022. 10. 5.
반응형

이 문제는 테이블 생성 시 PRIMARY KEY와 NOT NULL 조건과 INSERT 문의 VALUES에 대해서 미리 알고 있어야 풀 수 있습니다.

 

문제

아래 테이블에 삽입이 성공하는 SQL를 고르세요.

CREATE TABLE EMP 
(
    EMP_ID  NUMBER PRIMARY KEY,
    EMP_AMT NUMBER NOT NULL,
    EMP_DIV VARCHAR2(1)
)

------------------------------------------------------------------

1. INSERT INTO EMP VALUES (1,100)
2. INSERT INTO EMP (EMP_ID, EMP_AMT, EMP_DIV) VALUES (2,200,'AB')
3. INSERT INTO EMP (EMP_ID, EMP_DIV) VALUES (3,'X')
4. INSERT INTO EMP (EMP_ID, EMP_AMT) VALUES (4,300)
5. INSERT INTO EMP VALUES (5,500,NULL)

 


 

 

 


 

문제풀이

  • PRIMARY KEY 컬럼은 반드시 값을 넣어야 한다.
  • INSERT 문에서 컬럼을 지정하지 않은 VALUES는 컬럼의 모든 값을 지정해야 한다.
  • NOT NULL 컬럼은 NULL을 삽입할 수 없다. 
1. INSERT INTO EMP VALUES (1,100)

>> 컬럼을 지정하지 않으면 EMP TABLE의 모든 컬럼을 입력해야 한다.

 

2. INSERT INTO EMP (EMP_ID, EMP_AMT, EMP_DIV) VALUES (2,200,'AB')

>> EMP_DIV 컬럼은 VARCHAR2(1)이므로 문자 1글자만 입력이 가능하다.

 

3. INSERT INTO EMP (EMP_ID, EMP_DIV) VALUES (3,'X')

>> EMP_AMT가 NOT NULL 제약 조건이 있어서 반드시 입력해야 한다.

 

4. INSERT INTO EMP (EMP_ID, EMP_AMT) VALUES (4,300)

>> 문제 없이 삽입 가능

 

5. INSERT INTO EMP VALUES (5,500,NULL)

>> 문제 없이 삽입 가능 ( 테이블 생성 시 NULL, NOT NULL 제약조건을 지정하지 않으면 NULL이 DEFAULT 설정)


오늘은 테이블의 제약 조건에 따른 INSERT 문의 문법에 대해서 풀어봤습니다.

추가적인 궁금증은 댓글로 달아주세요!! :)

 

반응형

댓글