열 속성 수정

테이블의 각 열은 이름, 데이터 형식, Null 허용 여부 및 데이터 길이와 같은 속성을 가집니다. 테이블의 열 정의는 열의 전체 속성으로 구성됩니다.

열 데이터 형식

암시적으로 열의 기존 데이터를 새 데이터 형식으로 변환할 수 있으면 기존 열의 데이터 형식을 변경할 수 있습니다. 자세한 내용은 ALTER TABLE(Transact-SQL)을 참조하십시오.

열 데이터 길이

데이터 형식을 선택하면 데이터 길이가 자동으로 정의됩니다. 열의 데이터 형식이 binary, char, nchar, varbinary, varchar 또는 nvarchar인 경우에만 열의 길이 속성을 늘이거나 줄일 수 있습니다. 다른 데이터 형식이 지정된 열에서는 해당 데이터 형식에서 길이가 기본 제공되므로 데이터 길이를 바꿀 수 없습니다. 새로 지정된 길이가 원래 열 길이보다 작으면 새 길이를 초과하는 모든 열 값이 경고 없이 잘리게 됩니다. PRIMARY KEY 또는 FOREIGN KEY 제약 조건으로 정의된 열의 길이는 변경할 수 없습니다.

열 전체 자릿수

숫자 열의 전체 자릿수는 선택한 데이터 형식에서 사용하는 최대 자릿수입니다. 숫자가 아닌 열의 최대 자릿수는 대개 열의 최대 길이 또는 정의된 길이를 나타냅니다.

decimal 및 numeric를 제외한 모든 데이터 형식에서는 전체 자릿수가 자동으로 정의됩니다. decimal 및 numeric 데이터 형식이 지정된 열에서 사용하는 최대 자릿수를 다시 정의하려면 열 전체 자릿수를 변경하면 됩니다. SQL Server 데이터베이스 엔진에서는 데이터 형식이 지정되지 않은 열의 전체 자릿수를 변경할 수 없습니다.

열 소수 자릿수

numeric 또는 decimal 열의 소수 자릿수는 소수점 오른쪽에 있는 최대 자릿수입니다. 데이터 형식을 선택하면 열 소수 자릿수의 기본값은 0으로 설정됩니다. 근사 부동 소수가 지정된 열에서는 소수점 오른쪽의 자릿수가 고정되지 않기 때문에 소수 자릿수을 정의할 수 없습니다. 소수점 오른쪽에 나타나는 자릿수를 다시 정의하려면 numeric 또는 decimal 열의 소수 자릿수을 바꾸면 됩니다.

열의 Null 허용 여부

열에서 Null 값을 허용하거나 허용하지 않도록 정의할 수 있습니다. 기본적으로 열은 Null 값을 허용합니다. 열에 기존 Null 값이 없거나 열에 기존 인덱스가 없을 때만 기존 열에서 Null 값을 허용하지 않도록 변경할 수 있습니다. Null 값이 있는 기존 열에서 Null 값을 허용하지 않으려면 다음 단계를 따르십시오.

  1. NULL 대신 유효한 값을 삽입하는 DEFAULT 정의로 새 열을 추가합니다.

  2. 기존 열의 데이터를 새 열로 복사합니다.

  3. 기존 열을 삭제합니다.

열에 PRIMARY KEY 제약 조건이 정의되지 않을 때만 Null 값을 허용하지 않는 기본 열에서 Null 값을 허용하도록 할 수 있습니다.

스파스 열 및 열 집합

스파스 열은 테이블에 있는 대부분의 행에 대해 Null 값을 포함하는 열입니다. 열에 있는 값의 20%에서 40%가 NULL인 경우 스파스 열을 사용하십시오. 스파스 열은 Null 값에 대해 최적화된 저장소를 가지는 일반 열입니다. 자세한 내용은 스파스 열 사용을 참조하십시오.

스파스 열을 사용하는 테이블에서는 테이블의 모든 스파스 열을 반환하는 열 집합을 지정할 수 있습니다. 열 집합은 구조화된 출력으로 테이블의 모든 스파스 열을 결합하는 형식화되지 않은 XML 표현입니다. 열 집합은 테이블에 물리적으로 저장되지 않는다는 점에서 계산 열과 유사합니다. 자세한 내용은 열 집합 사용을 참조하십시오.

열 속성을 설정하려면

열 속성을 보려면

열 이름을 바꾸려면