다음을 통해 공유


COLUMNPROPERTY(Transact-SQL)

열 또는 매개 변수에 대한 정보를 반환합니다.

항목 링크 아이콘 Transact-SQL 구문 표기 규칙

구문

COLUMNPROPERTY ( id , column , property )

인수

  • id
    테이블이나 프로시저의 식별자(ID)가 포함된 입니다.

  • column
    열이나 매개 변수의 이름이 포함된 식입니다.

  • property
    id에 대해 반환될 정보를 포함하는 식이며 다음 값 중 하나일 수 있습니다.

    설명

    반환 값

    AllowsNull

    Null 값을 허용합니다.

    1 = TRUE

    0 = FALSE

    NULL = 입력이 잘못되었습니다.

    ColumnId

    sys.columns.column_id에 해당하는 열 ID 값입니다.

    열 ID

    [!참고]

    여러 열을 쿼리할 때 열 ID 값의 시퀀스에 간격이 나타날 수 있습니다.

    FullTextTypeColumn

    column의 문서 유형 정보를 보관하는 테이블의 TYPE COLUMN입니다.

    이 속성의 두 번째 매개 변수로 전달된 열에 대한 전체 텍스트 TYPE COLUMN의 ID입니다.

    IsComputed

    열이 계산 열입니다.

    1 = TRUE

    0 = FALSE

    NULL = 입력이 잘못되었습니다.

    IsCursorType

    프로시저 매개 변수가 CURSOR 형식입니다.

    1 = TRUE

    0 = FALSE

    NULL = 입력이 잘못되었습니다.

    IsDeterministic

    열이 결정적입니다. 이 속성은 계산 열과 뷰 열에만 적용됩니다.

    1 = TRUE

    0 = FALSE

    NULL = 입력이 잘못되었습니다. 계산 열 또는 뷰 열이 아닙니다.

    IsFulltextIndexed

    전체 텍스트 인덱싱을 위해 등록된 열입니다.

    1 = TRUE

    0 = FALSE

    NULL = 입력이 잘못되었습니다.

    IsIdentity

    IDENTITY 속성을 사용하는 열입니다.

    1 = TRUE

    0 = FALSE

    NULL = 입력이 잘못되었습니다.

    IsIdNotForRepl

    IDENTITY_INSERT 설정을 확인하는 열입니다.

    1 = TRUE

    0 = FALSE

    NULL = 입력이 잘못되었습니다.

    IsIndexable

    열을 인덱싱할 수 있습니다.

    1 = TRUE

    0 = FALSE

    NULL = 입력이 잘못되었습니다.

    IsOutParam

    프로시저 매개 변수가 출력 매개 변수입니다.

    1 = TRUE

    0 = FALSE NULL = 입력이 잘못되었습니다.

    IsPrecise

    열이 정확합니다. 이 속성은 확정적인 열에만 적용할 수 있습니다.

    1 = TRUE

    0 = FALSE NULL = 입력이 잘못되었습니다. 확정적인 열이 아닙니다.

    IsRowGuidCol

    uniqueidentifier 데이터 형식을 가지며 ROWGUIDCOL 속성이 정의된 열입니다.

    1 = TRUE

    0 = FALSE

    NULL = 입력이 잘못되었습니다.

    IsSystemVerified

    열의 확정성과 전체 자릿수 속성은 데이터베이스 엔진에서 확인할 수 있습니다. 이 속성은 계산 열과 뷰 열에만 적용됩니다.

    1 = TRUE

    0 = FALSE

    NULL = 입력이 잘못되었습니다.

    IsXmlIndexable

    XML 인덱스에서 XML 열을 사용할 수 있습니다.

    1 = TRUE

    0 = FALSE

    NULL = 입력이 잘못되었습니다.

    Precision

    열 또는 매개 변수 데이터 형식의 길이입니다.

    지정한 열 데이터 형식의 길이

    -1 = xml 또는 큰 값 형식

    NULL = 입력이 잘못되었습니다.

    Scale

    열 또는 매개 변수 데이터 형식의 소수 자릿수입니다.

    소수 자릿수

    NULL = 입력이 잘못되었습니다.

    StatisticalSemantics

    열에 의미 체계 인덱싱을 사용하도록 설정되어 있습니다.

    1 = TRUE

    0 = FALSE

    SystemDataAccess

    SQL Server의 시스템 카탈로그나 가상 시스템 테이블에 있는 데이터에 액세스하는 함수에서 열이 파생됩니다. 이 속성은 계산 열과 뷰 열에만 적용됩니다.

    1 = TRUE(읽기 전용 액세스)

    0 = FALSE

    NULL = 입력이 잘못되었습니다.

    UserDataAccess

    뷰와 임시 테이블을 포함하여 SQL Server 로컬 인스턴스에 저장된 사용자 테이블의 데이터에 액세스하는 함수에서 열이 파생됩니다. 이 속성은 계산 열과 뷰 열에만 적용됩니다.

    1 = TRUE(읽기 전용 액세스)

    0 = FALSE

    NULL = 입력이 잘못되었습니다.

    UsesAnsiTrim

    테이블을 처음 만들었을 때 ANSI_PADDING을 ON으로 설정했습니다. 이 속성은 char 또는 varchar 형식의 열 또는 매개 변수에만 적용됩니다.

    1= TRUE

    0= FALSE

    NULL = 입력이 잘못되었습니다.

    IsSparse

    열이 스파스 열입니다. 자세한 내용은 스파스 열 사용을 참조하십시오.

    1= TRUE

    0= FALSE

    NULL = 입력이 잘못되었습니다.

    IsColumnSet

    열이 열 집합입니다. 자세한 내용은 열 집합 사용을 참조하십시오.

    1= TRUE

    0= FALSE

    NULL = 입력이 잘못되었습니다.

반환 형식

int

예외

오류가 발생하거나 호출자가 개체를 볼 수 있는 권한을 갖고 있지 않으면 NULL을 반환합니다.

사용자는 소유하고 있거나 사용 권한을 부여 받은 보안 개체의 메타데이터만 볼 수 있습니다. 즉, 사용자가 개체에 대한 사용 권한이 없으면 COLUMNPROPERTY와 같은 메타데이터 내보내기 기본 제공 함수가 NULL을 반환합니다. 자세한 내용은 메타데이터 표시 유형 구성를 참조하십시오.

주의

어떤 열의 확정적 속성을 확인할 때는 먼저 그 열이 계산 열인지 확인하십시오. IsDeterministic은 계산되지 않은 열에 대해 NULL을 반환합니다. 계산 열을 인덱스 열로 지정할 수 있습니다.

다음 예에서는 LastName 열의 길이를 반환하는 방법을 보여 줍니다.

USE AdventureWorks2012;
GO
SELECT COLUMNPROPERTY( OBJECT_ID('Person.Person'),'LastName','PRECISION')AS 'Column Length';
GO

결과 집합은 다음과 같습니다.

Column Length

-------------

50

참고 항목

참조

메타데이터 함수(Transact-SQL)

OBJECTPROPERTY(Transact-SQL)

TYPEPROPERTY(Transact-SQL)