SQL_VARIANT_PROPERTY(Transact-SQL)

sql_variant 값에 대한 기본 데이터 형식 및 기타 정보를 반환합니다.

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

구문

SQL_VARIANT_PROPERTY ( expression , property )

인수

expression

sql_variant 형식의 식입니다.

property

정보를 제공할 sql_variant 속성의 이름입니다. property는 **varchar(128)**이며 다음 값 중 하나일 수 있습니다.

설명 반환된 sql_variant의 기본 형식

BaseType

다음과 같은 SQL Server 2005 데이터 형식

bigint

binary

char

decimal

float

int

money

nchar

numeric

nvarchar

real

smalldatetime

smallint

smallmoney

tinyint

uniqueidentifier

varbinary

varchar

sysname

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

Precision

숫자 기본 데이터 형식의 전체 자릿수

datetime = 23

smalldatetime = 16

float = 53

real = 24

decimal (p,s) 및 numeric (p,s) = p

money = 19

smallmoney = 10

bigint = 19

int = 10

smallint = 5

tinyint = 3

bit = 1

기타 모든 유형 = 0

int

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

Scale

숫자 기반 데이터 형식의 소수점 이하 자릿수

decimal (p,s) 및 numeric (p,s) = s

moneysmallmoney = 4

datetime = 3

기타 모든 유형 = 0

int

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

TotalBytes

메타데이터 및 값의 모든 데이터를 저장하는 데 필요한 바이트 수입니다. 이 정보는 sql_variant 열의 데이터에 대한 최대치를 확인하는 데 유용합니다. 값이 900보다 크면 인덱스를 만들 수 없습니다.

int

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

Collation

특정 sql_variant 값의 데이터 정렬을 나타냅니다.

sysname

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

MaxLength

최대 데이터 형식 길이(바이트)입니다. 예를 들어 nvarchar(50)MaxLength는 100이고, intMaxLength는 4입니다.

int

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

반환 형식

sql_variant

다음 예에서는 colB =1689인 경우 colA의 값인 46279.1에 대한 SQL_VARIANT_PROPERTY 정보를 검색합니다. 여기에서 tableAsql_variant 형식의 colAint 형식의 colB를 포함합니다.

CREATE   TABLE tableA(colA sql_variant, colB int)
INSERT INTO tableA values ( cast (46279.1 as decimal(8,2)), 1689)
SELECT   SQL_VARIANT_PROPERTY(colA,'BaseType') AS 'Base Type',
         SQL_VARIANT_PROPERTY(colA,'Precision') AS 'Precision',
         SQL_VARIANT_PROPERTY(colA,'Scale') AS 'Scale'
FROM      tableA
WHERE      colB = 1689

결과 집합은 다음과 같습니다. 이 세 값은 각각 sql_variant입니다.

Base Type    Precision    Scale
---------    ---------    -----
decimal      8           2

(1 row(s) affected)

참고 항목

참조

sql_variant(Transact-SQL)

관련 자료

sql_variant 데이터 사용

도움말 및 정보

SQL Server 2005 지원 받기