sp_datatype_info(Transact-SQL)

현재 환경에서 지원되는 데이터 형식에 대한 정보를 반환합니다.

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

구문

sp_datatype_info [ [ @data_type = ] data_type ] 
     [ , [ @ODBCVer = ] odbc_version ] 

인수

  • [ @data_type= ] data_type
    지정된 데이터 형식의 코드 번호입니다. 모든 데이터 형식의 목록을 가져오려면 이 매개 변수를 생략하십시오. data_type은 int이며 기본값은 0입니다.

  • [ @ODBCVer= ] odbc_version
    사용하고 있는 ODBC의 버전입니다. odbc_version은 tinyint이며 기본값은 2입니다.

반환 코드 값

없음

결과 집합

열 이름

데이터 형식

설명

TYPE_NAME

sysname

DBMS에 종속된 데이터 형식입니다.

DATA_TYPE

smallint

ODBC 형식의 열이 모두 매핑되는 해당 형식의 코드입니다.

PRECISION

int

데이터 원본에 있는 데이터 형식의 최대 전체 자릿수입니다. 전체 자릿수가 적용되지 않는 데이터 형식에 대해서는 NULL이 반환됩니다. PRECISION 열의 값은 10진수로 반환됩니다.

LITERAL_PREFIX

varchar(32)

상수 앞에 사용되는 문자 또는 문자열입니다. 예를 들어 문자 유형에는 작은따옴표(')가 사용되며 이진에는 0x가 사용됩니다.

LITERAL_SUFFIX

varchar(32)

상수 끝에 사용되는 문자 또는 문자열입니다. 예를 들어 문자 유형에는 작은따옴표(')가 사용되며 이진에는 따옴표가 사용되지 않습니다.

CREATE_PARAMS

varchar(32)

해당 데이터 형식에 대한 매개 변수 만들기에 대한 설명입니다. 예를 들어 decimal은 "precision, scale", float는 NULL, 그리고 varchar는 "max_length"입니다.

NULLABLE

smallint

NULL 허용 여부를 지정합니다.

1 = NULL 값을 허용합니다.

0 = NULL 값을 허용하지 않습니다.

CASE_SENSITIVE

smallint

대/소문자 구분 여부를 지정합니다.

1 = 이 형식의 열은 모두 데이터 정렬 시 대/소문자를 구분합니다.

0 = 이 형식의 열은 모두 대/소문자를 구분하지 않습니다.

SEARCHABLE

smallint

열 형식에 대한 검색 기능을 지정합니다.

1 = 검색할 수 없습니다.

2 = LIKE를 사용하여 검색할 수 있습니다.

3 = WHERE를 사용하여 검색할 수 있습니다.

4 = WHERE 또는 LIKE를 사용하여 검색할 수 있습니다.

UNSIGNED_ATTRIBUTE

smallint

데이터 형식의 서명 여부를 지정합니다.

1 = 서명되지 않은 데이터 형식입니다.

0 = 서명된 데이터 형식입니다.

MONEY

smallint

money 데이터 형식을 지정합니다.

1 = money 데이터 형식입니다.

0 = money 데이터 형식이 아닙니다.

AUTO_INCREMENT

smallint

자동 증가를 지정합니다.

1 = 자동 증가입니다.

0 = 자동 증가가 아닙니다.

NULL = 특성이 적용되지 않습니다.

응용 프로그램은 이 특성을 가진 열에 값을 삽입할 수는 있으나 열에 있는 값을 업데이트할 수 없습니다. bit 데이터 형식을 제외하고 AUTO_INCREMENT는 정확한 수치 또는 근사치 데이터 형식 범주에 속하는 데이터 형식에만 사용할 수 있습니다.

LOCAL_TYPE_NAME

sysname

데이터 원본에 종속적인 데이터 형식 이름의 지역화된 버전입니다. 예를 들어 프랑스에서 DECIMAL은 DECIMALE이 됩니다. 데이터 원본이 지역화된 이름을 지원하지 않는 경우에는 NULL이 반환됩니다.

MINIMUM_SCALE

smallint

데이터 원본에서 데이터 형식의 최소 소수 자릿수입니다. 데이터 형식이 고정 소수 자릿수인 경우에는 MINIMUM_SCALE 및 MAXIMUM_SCALE 열 모두 이 값을 포함합니다. 소수 자릿수가 적용되지 않는 경우에는 NULL이 반환됩니다.

MAXIMUM_SCALE

smallint

데이터 원본에서 데이터 형식의 최대 소수 자릿수입니다. 데이터 원본에서 최대 소수 자릿수는 별도로 정의되지 않고 그 대신 최대 자릿수와 동일하게 정의된 경우에는 이 열이 PRECISION 열과 같은 값을 포함하게 됩니다.

SQL_DATA_TYPE

smallint

설명자의 TYPE 필드에 표시된 SQL 데이터 형식의 값입니다. 이 열은 datetime 및 ANSI interval 데이터 형식을 제외하고 DATA_TYPE 열과 동일합니다. 이 필드는 항상 값을 반환합니다.

SQL_DATETIME_SUB

smallint

SQL_DATA_TYPE의 값이 SQL_DATETIME 또는 SQL_INTERVAL인 경우 datetime 또는 ANSI interval 하위 코드입니다. datetime 및 ANSI interval이 아닌 데이터 형식의 경우 이 필드는 NULL입니다.

NUM_PREC_RADIX

int

열이 보유할 수 있는 최대 수를 계산하는 데 필요한 비트 수 또는 자릿수입니다. 데이터 형식이 근사 숫자 데이터 형식인 경우 이 열은 비트를 표시하는 2라는 값을 포함할 수 있습니다. 정확한 숫자 형식인 경우에는 이 열이 10진수의 수를 표시하는 10이라는 값을 포함할 수 있습니다. 그렇지 않은 경우 이 열은 NULL입니다. 응용 프로그램에서는 전체 자릿수와 기수를 결합하여 열이 보유할 수 있는 최대 수를 계산할 수 있습니다.

INTERVAL_PRECISION

smallint

data_type이 interval인 경우에 전체 자릿수를 유도하는 간격의 값입니다. 그렇지 않은 경우에는 NULL입니다.

USERTYPE

smallint

systypes 테이블의 usertype 값입니다.

주의

sp_datatype_info는 ODBC의 SQLGetTypeInfo와 동일합니다. 반환되는 결과가 정렬되는 첫 번째 기준은 DATA_TYPE이고 두 번째 기준은 데이터 형식이 ODBC SQL 데이터 형식에 매핑되는 근접도입니다.

사용 권한

public 역할의 멤버 자격이 필요합니다.

다음 예에서는 data_type 값을 -9로 지정하여 sysname 및 nvarchar 데이터 형식에 대한 정보를 검색합니다.

USE master;
GO
EXEC sp_datatype_info -9;
GO

참고 항목

참조

데이터베이스 엔진 저장 프로시저(Transact-SQL)

데이터 형식(Transact-SQL)

시스템 저장 프로시저(Transact-SQL)