본문 바로가기
SQL

SQL NOT NULL, DEFAULT 구문

by 진격의 파파 2013. 9. 10.
반응형

 

 

안녕하세요!!

이번에 포스팅할 내용은 NOT NULL , DEFAULT 제약조건이며 이전에 설명드렸던 제약조건에 대해서 좀더 자세히 말씀드리려 합니다.

 

NOT NULL 제약조건

NOT NULL 그냥 직역하면 NULL 즉 공백을 NOT 하겠다는 의미 입니다. 

공백값을 허용하지 않는다 그런의미가 되겠네요!

 

그렇기 때문에 NOT NULL 제약조건은 항상 값을 포함할 필드에 적용됩니다. 그래서 만약 아무런 값이 안들어가게 되면 에러가 나게 됩니다.

 

사실 의미만 정확하게 알고 있다면 굳이 테스트까지는 필요없을듯 하지만 그래도 테이블을 한번 만들어 보겠습니다.

CREATE TABLE PersonsNotNull
(
id int NOT NULL,
Name varchar(255) NOT NULL,
Address varchar(255),
City varchar(255)
);

// 위처럼 간단하게 테이블을 하나 만들고 id, name 필드에 값을 안넣고 레코드를 생성하면 값이 없다는 에러를 반환하게 됩니다.

 

 

DEFAULT 제약조건

default 제약조건은 필드를 만들때 기본적으로 값이 들어가 있는 상태를 말합니다.

예를 들어서 위와 같이 테이블을 만든다고 가정할때 기본적으로 City 는 서울이라고 할 경우 아래와 같은 테이블을 구성할 수 있습니다.

CREATE TABLE PersonsNotNull
(
id int NOT NULL,
Name varchar(255) NOT NULL,
Address varchar(255),
City varchar(255) DEFAULT '서울'
);

 

또는 기본적으로 레코드가 생성될때 날짜를 넣고자 할 경우

CREATE TABLE Orders
(
o_id int NOT NULL,
OrderNo int NOT NULL,
P_Id int,
OrderDate date DEFAULT GETDATE()
);

// 처럼 하면 레코드가 입력될때 OrderDate 필드에는 입력된 시간이 기본적으로 들어가게 됩니다.

 

지금까지 제약조건중 NOT NULL , DEFAULT 구문에 대해서 설명드렸습니다. 크게 어려운건 없을거라 생각합니다.

다음 포스팅에서는 UNIQUE 제약조건에 대해서 설명하겠습니다.

 

오전에 비가 잠깐 오긴 했지만 다시 그쳤네요. 그리고 지금은 비가 올랑말랑 하네요.

저녁엔 비가 올듯하니 우산들 하나씩 챙기시기 바랍니다~

그럼 오늘도 즐거운 하루 즐거운 프로그래밍 되세요!!!

 

반응형

'SQL' 카테고리의 다른 글

SQL PRIMARY KEY 제약조건  (2) 2013.09.12
SQL UNIQUE 구문  (0) 2013.09.11
SQL Constraints 구문  (1) 2013.09.09
SQL CREATE DATABASE and TABLE 구문  (0) 2013.09.07
SQL INSERT INTO SELECT 구문  (0) 2013.09.06