본문 바로가기
IT/MSSQL

[MSSQL] 디폴트(DEFAULT) 제약조건 - 생성(추가), 삭제

by 베베야 2023. 3. 8.
728x90

MSSQL에서 테이블에 DEFAULT 제약조건을 추가해야 경우가 있다.

이번 시간에는 DEFAULT 제약조건 생성(추가), 삭제 방법에 대해서 설명한다.

 

DEFAULT 제약조건이란?

값을 입력하지 않았을때 자동으로 입력될 값을 미리 지정한다.

 

1. DEFAULT 제약을 갖는 테이블 만들기

-- 테이블이 이미 있으면 삭제

IF OBJECT_ID('dbo.Vacation', 'U') IS NOT NULL

DROP TABLE dbo.Vacation

GO



-- DEFAULT 제약을 갖는 테이블 만들기

CREATE TABLE dbo.Vacation (

VacationID int IDENTITY PRIMARY KEY,

EmpID char(5) NOT NULL,

BeginDate date NOT NULL,

EndDate date NOT NULL,

Reason nvarchar(50) DEFAULT N'개인사유',  -- DEFAULT 제약

Duration AS (DATEDIFF(day, BeginDate, EndDate) + 1)



)

GO

 

2.DEFAULT 제약 삭제

-- DEFAULT 제약 이름 확인

SELECT name

FROM sys.default_constraints

WHERE parent_object_id = OBJECT_ID('dbo.Vacation', 'U') AND type = 'D'

GO

-- 테이블에서 DEFAULT 제약 삭제

ALTER TABLE dbo.Vacation

DROP CONSTRAINT DF__Vacation__Reason__7A3223E8

GO

 

3.기존 테이블에 DEFAULT 제약 추가

-- 테이블에 DEFAULT 제약 추가

ALTER TABLE dbo.Vacation

ADD CONSTRAINT DF_Vacation DEFAULT N'개인사유' FOR Reason

GO



-- DEFAULT 제약 이름 확인

SELECT name

FROM sys.default_constraints

WHERE parent_object_id = OBJECT_ID('dbo.Vacation', 'U') AND type = 'D'

GO

반응형
그리드형

댓글