프로그래밍 언어/Database

SQL Server의 기존 테이블에 기본값이있는 열 추가

Rateye 2021. 6. 12. 18:03
728x90
반응형
질문 : SQL Server의 기존 테이블에 기본값이있는 열 추가

SQL Server 2000 / SQL Server 2005 의 기존 테이블에 기본값이있는 열을 어떻게 추가 할 수 있습니까?

답변

ALTER TABLE {TABLENAME} 
ADD {COLUMNNAME} {TYPE} {NULL|NOT NULL} 
CONSTRAINT {CONSTRAINT_NAME} DEFAULT {DEFAULT_VALUE}
WITH VALUES
ALTER TABLE SomeTable
        ADD SomeCol Bit NULL --Or NOT NULL.
 CONSTRAINT D_SomeTable_SomeCol --When Omitted a Default-Constraint Name is autogenerated.
    DEFAULT (0)--Optional Default-Constraint.
WITH VALUES --Add if Column is Nullable and you want the Default Value for Existing Records.

선택적 제약 이름 :
CONSTRAINT D_SomeTable_SomeCol 을 생략하면 SQL Server가 자동 생성됩니다.
DF__SomeTa__SomeC__4FB7FEF6 과 같은 재미있는 이름을 가진 Default-Contraint

선택적 With-Values 문 :
WITH VALUES 는 열이 Null이 가능한 경우에만 필요합니다.
기존 레코드에 사용되는 기본값을 원합니다.
열이 NOT NULL 아니면 자동으로 기본값을 사용합니다.
WITH VALUES 지정 여부에 관계없이 모든 기존 레코드에 대해.

기본 제약 조건에서 삽입이 작동하는 방법 :
SomeTable 레코드를 삽입하고 SomeCol 값을 지정하지 않으면 0 입니다.
당신이 레코드를 삽입하고 지정하는 경우 SomeCol 등의 값 NULL (당신의 열이 널 (NULL)을 허용 할)
그러면 Default-Constraint가 사용 되지 않고 NULL 이 Value로 삽입됩니다.

메모는 아래 모든 사람의 훌륭한 피드백을 기반으로 작성되었습니다.
특별히 감사함:
@Yatrix, @WalterStabosz, @YahooSerious 및 @StackMan의 의견입니다.

출처 : https://stackoverflow.com/questions/92082/add-a-column-with-a-default-value-to-an-existing-table-in-sql-server
728x90
반응형