[Oracle / 오라클] Null / IS NULL / NOT NULL 제약조건 생성, 삭제하기

seulki·2022년 9월 14일
0

[oracle]

목록 보기
15/28
post-thumbnail

✨ IS NULL 연산자

  • NULL은 데이터 값이 완전히 '비어 있는' 상태를 말한다.
  • '현재 무슨 값인지 확정되지 않은 상태' 이거나
    '값 자체가 존재하지 않는 상태' 를 나타내는 데이터에 사용
  • 숫자 0은 값 0이 존재한다는 뜻이므로 NULL과는 다르다.

✨ NULL의 의미

  • 값이 존재하지 않음
    -> 통장을 개설한 적이 없는 은행 고객의 계좌 번호
  • 해당 사항 없음
    -> 미혼인 고객의 결혼기념일
  • 노출할 수 없는 값
    -> 고객 비밀번호 찾기 같은 열람을 제한해야 하는 특정 개인 정보
  • 확정되지 않은 값
    -> 미성년자의 출신 대학

✨ IS NULL 연산자를 사용하여 출력하기

  • 컬럼명 IS NULL : 컬럼값이 NULL이면 TRUE
  • 컬럼명 IS NOT NULL : 컬럼값이 NULL이 아니면 TRUE
- Null + 100 = Null
- Null > 100 = Null
  • NULL값을 = 으로 비교 할 수 없기 때문에
    IS NULL 연산자를 사용해야 한다.
-- COMMISSION_PCT 값이 NULL인 데이터
SELECT COMMISSION_PCT
FROM EMPLOYEES E
WHERE COMMISSION_PCT IS NULL;

-- COMMISSION_PCT 값이 NULL이 아닌 데이터
SELECT COMMISSION_PCT
FROM EMPLOYEES E
WHERE COMMISSION_PCT IS NOT NULL;


✨ NOT NULL 제약조건 생성

CREATE TABLE NULL_test(
		col1 varchar2(20) NOT NULL
	,	col2 varchar2(20) null
	, 	col3 varchar2(20)
	);
ALTER TABLE 테이블명  MODIFY 컬럼명 NOT NULL;

✨ NOT NULL 제약조건 삭제

ALTER TABLE 테이블명  DROP CONSTRAINT 컬럼명 제약조건 이름;
profile
웹 개발자 공부 중

0개의 댓글