ProgramingTip

Nullable 열을 사용하여 NOT NULL로 변경

bestdevel 2020. 12. 1. 19:10
반응형

Nullable 열을 사용하여 NOT NULL로 변경


오늘 null을 허용하는 'Created'라는 datetime 열이있는 이전 테이블을 보았습니다. 이제는 값을 NULL이 아니도록 변경하고 추가 (getdate ())를 추가하는 제약 조건도 포함하고 싶습니다.

지금까지 모든 null을 미리 정리하여 작동하는 다음 펼쳐집니다.

ALTER TABLE dbo.MyTable ALTER COLUMN Created DATETIME NOT NULL 

ALTER 문에도 불구하고 지정하는 방법이 있습니까?


나는 제안 세 가지 문제의 자료로해야 할 생각한다. 주위를 둘러 나는 보았고 내가 본 모든 [해석] 열을 추가 하는 경우 할 수 있다고 제안하는을 구석으로 같지만 열을 변경하는 경우에는 할 수 없습니다.

ALTER TABLE dbo.MyTable
ADD CONSTRAINT my_Con DEFAULT GETDATE() for created

UPDATE MyTable SET Created = GetDate() where Created IS NULL

ALTER TABLE dbo.MyTable 
ALTER COLUMN Created DATETIME NOT NULL 

null 인 모든 레코드를 먼저 업데이트 한 다음 alter table 문을 할 수 있습니다.

Update dbo.TableName
Set
Created="01/01/2000"
where Created is NULL

두 개의 쿼리를 실행해야합니다.

1- 필요한 열에 추가합니다.

ALTER TABLE 'Table_Name'ADD DEFAULT'value'FOR 'Column_Name'

다음과 같이 IsDeleted 열에 추가를 추가하고 싶습니다.

예 : ALTER TABLE [dbo]. [직원] IsDeleted 기본값 0 추가

2-nullable 열 값을 null이 아닌 값으로 변경

ALTER TABLE 'table_name'ALTER COLUMN'column_name ''data_type'NOT NULL

IsDeleted 열을 null이 아닌 만들고 싶습니다.

ALTER TABLE [dbo]. [직원] 열 IsDeleted 변경 BIT NOT NULL


SQL Server의 경우 디자인보기 내의 열 속성에서 수행 할 수 있습니다.

이 시도? :

ALTER TABLE dbo.TableName 
  ADD CONSTRAINT DF_TableName_ColumnName
    DEFAULT '01/01/2000' FOR ColumnName

참고 URL : https://stackoverflow.com/questions/3186760/change-a-nullable-column-to-not-null-with-default-value

반응형