Develop+

SQL 제약 조건 NOT NULL (Constraint) 본문

DATABASE/SQL

SQL 제약 조건 NOT NULL (Constraint)

Sunny Buddy 2020. 11. 17. 16:15
728x90

제약조건

사용자가 원하는 조건의 데이터만 유지하기 위해서 특정 컬럼에 설정하는 제약
데이터 무결성을 지키기 위해 제한된 조건이다.

NOT NULL    =  데이터에 NULL을 허용하지 않음
테이블 생성 시 속성 뒤에 이어서 붙혀줌

사용 법

CREATE  TABLE <테이블명> [옵션들](
<컬럼 명> <데이터 타입 > NOT NULL,
);

NOT NULL 예시

CREATE TABLE USER_NOTNULL(
    USER_NO NUMBER NOT NULL,
    USER_ID VARCHAR2(20) NOT NULL,
    USER_PWD VARCHAR2(30) NOT NULL,
    USER_NAME VARCHAR2(30),
    GENDER VARCHAR2(10),
    PHONE VARCHAR2(30),
    EMAIL VARCHAR(50)
)

데이터 삽입 : 정상 삽입

INSERT INTO USER_NOTNULL VALUES(1,'USER1','PASS1','홍길동','남',
    '010-1234-1234','hong@naver.com');

데이터 삽입 : 정상 삽입

INSERT INTO USER_NOTNULL VALUES(1,'USER1', 'PASS1',
    NULL, NULL, NULL, NULL);

데이터 삽입 : NOT NULL제약 조건이 설정된 컬럼에 NULL값이 삽입될 경우 오류 발생

INSERT INTO USER_NOTNULL VALUES(NULL, NULL, NULL,
    '홍길동', '남', '010-1234-1234', 'hong@kh.or.kr');
NOT NULL 제약조건이 추가되어 있는 컬럼에 NULL값이 입력된 데이터가 들어가면 오류가 나고 값이 들어가지 않는다.
테이블의 구조와 널 값이 되었는지 확인하려면 구조를 보는 명령어를 실행시켜 확인 하면 된다.

구조를 보는 명령어

-- DESCRIPTION(설명)
DESC USER_NOTNULL;

결과

 
 
728x90