답변:
아래와 같은 T-SQL 문을 통해 수행하는 경우 테이블 삭제가 발생하지 않으며 프로덕션 환경에서 안전하게 수행 할 수 있습니다.
alter table <table> alter column <column> nvarchar(biggernumber) [not] null
SSMS 디자인 테이블 GUI를 통해 변경하는 경우 변경 구현에 사용하기로 결정한 스크립트에 따라 다릅니다. 때로는 임시 테이블에 데이터를 삽입하고 원래 테이블을 삭제하고 해당 테이블의 새 버전을 만든 다음 새 테이블에 다시 삽입합니다. 수행 할 작업을 쉽게 찾을 수있는 방법은 "스크립트 생성"버튼을 클릭하고 실행하려는 T-SQL을 보는 것입니다.
열의 열 너비를 늘리면 nvarchar
테이블 삭제가 필요하지 않습니다. 어떤 ALTER TABLE
작업 도 수행 하지 않습니다 . 테이블 또는 열 속성 변경시 제한 사항에 대한 자세한 내용은 ALTER TABLE 문을 참조하십시오 .
아래 문서에서 가장 관련성이 높은 부분을 복사했습니다.
열 크기 변경
ALTER COLUMN 절에서 컬럼 데이터 유형의 새 크기를 지정하여 컬럼의 길이, 정밀도 또는 스케일을 변경할 수 있습니다. 열에 데이터가 있으면 새 크기는 데이터의 최대 크기보다 작을 수 없습니다. 또한 열이 varchar, nvarchar 또는 varbinary 데이터 형식이고 인덱스가 PRIMARY KEY 제약 조건의 결과가 아닌 경우 열을 인덱스에 정의 할 수 없습니다. 예 P를 참조하십시오.
잠금 및 ALTER TABLE
ALTER TABLE에 지정된 변경 사항이 즉시 구현됩니다. 변경시 테이블의 행을 수정해야하는 경우 ALTER TABLE은 행을 업데이트합니다. ALTER TABLE은 테이블에서 스키마 수정 잠금을 획득하여 끝에서 매우 짧은 SCH-M 잠금이 필요한 온라인 인덱스 작업을 제외하고 변경 중에 테이블의 메타 데이터를 참조하는 다른 연결이 없는지 확인합니다. ALTER TABLE… SWITCH 작업에서 소스 테이블과 대상 테이블 모두에서 잠금이 획득됩니다. 테이블에 대한 수정 사항이 기록되고 완전히 복구 가능합니다. 열 삭제 또는 기본값으로 NOT NULL 열 추가와 같이 매우 큰 테이블의 모든 행에 영향을주는 변경은 많은 로그 레코드를 완료하고 생성하는 데 시간이 오래 걸릴 수 있습니다. 이러한 ALTER TABLE 문은 INSERT, UPDATE,