sp_columns_ex(Transact-SQL)

적용 대상: SQL Server

지정한 연결된 서버 테이블에 대해 각 열마다 한 행씩 열 정보를 반환합니다. sp_columns_ex는 @column_name 지정된 경우 특정 열에 대한 열 정보만 반환합니다.

Transact-SQL 구문 표기 규칙

구문

sp_columns_ex
    [ @table_server = ] N'table_server'
    [ , [ @table_name = ] N'table_name' ]
    [ , [ @table_schema = ] N'table_schema' ]
    [ , [ @table_catalog = ] N'table_catalog' ]
    [ , [ @column_name = ] N'column_name' ]
    [ , [ @ODBCVer = ] ODBCVer ]
[ ; ]

인수

[ @table_server = ] N'table_server'

열 정보를 반환할 연결된 서버의 이름입니다. @table_server 기본값이 없는 sysname입니다.

[ @table_name = ] N'table_name'

열 정보를 반환할 테이블의 이름입니다. @table_name sysname이며 기본값은 .입니다NULL.

[ @table_schema = ] N'table_schema'

열 정보를 반환할 테이블의 스키마 이름입니다. @table_schema sysname이며 기본값은 .입니다NULL.

[ @table_catalog = ] N'table_catalog'

열 정보를 반환할 테이블의 카탈로그 이름입니다. @table_catalog sysname이며 기본값은 .입니다NULL.

[ @column_name = ] N'column_name'

정보를 제공할 데이터베이스 열의 이름입니다. @column_name sysname이며 기본값은 .입니다NULL.

[ @ODBCVer = ] ODBCVer

사용 중인 ODBC 버전입니다. @ODBCVer 기본값2인 int입니다. 이는 ODBC 버전 2를 나타냅니다. 유효한 값은 2 또는 3입니다. 버전 2와 3 간의 동작 차이점에 대한 자세한 내용은 ODBC SQLColumns 사양을 참조하세요.

반환 코드 값

없음

결과 집합

열 이름 데이터 형식 설명
TABLE_CAT sysname 테이블 또는 뷰 한정자 이름입니다. 다양한 DBMS 제품은 테이블(<qualifier>.<owner>.<name>)에 대해 세 부분으로 구성된 명명을 지원합니다. SQL Server에서 이 열은 데이터베이스 이름을 나타냅니다. 일부 제품에서는 테이블 데이터베이스 환경의 서버 이름을 나타냅니다. 이 필드는 다음과 같습니다 NULL.
TABLE_SCHEM sysname 테이블 또는 뷰 소유자 이름입니다. SQL Server에서 이 열은 테이블을 만든 데이터베이스 사용자의 이름을 나타냅니다. 이 필드는 항상 값을 반환합니다.
TABLE_NAME sysname 테이블 또는 뷰 이름입니다. 이 필드는 항상 값을 반환합니다.
COLUMN_NAME sysname 반환된 각 열의 열 이름입니다 TABLE_NAME . 이 필드는 항상 값을 반환합니다.
DATA_TYPE smallint ODBC 형식 표시에 해당하는 int 값입니다. ODBC 형식에 매핑할 수 없는 데이터 형식인 경우 이 값은 다음과 같습니다 NULL. 네이티브 데이터 형식 이름이 열에 TYPE_NAME 반환됩니다.
TYPE_NAME varchar(13) 데이터 형식을 나타내는 문자열입니다. 이 이름은 기본 DBMS에서 제공합니다.
COLUMN_SIZE int 유효 자릿수입니다. 열의 PRECISION 반환 값은 base 10입니다.
BUFFER_LENGTH int 데이터의 전송 크기입니다.1
DECIMAL_DIGITS smallint 소수점 오른쪽에 있는 자릿수입니다.
NUM_PREC_RADIX smallint 숫자 데이터 형식의 기준입니다.
NULLABLE smallint NULL 허용 여부를 지정합니다.

1 = NULL 가 가능합니다.
0 = NOT NULL.
REMARKS varchar(254) 이 필드는 항상 .NULL
COLUMN_DEF varchar(254) 열의 기본값입니다.
SQL_DATA_TYPE smallint 설명자 필드에 나타나는 TYPE SQL 데이터 형식의 값입니다. 이 열은 datetime 및 SQL-92 간격 데이터 형식을 제외하고 열과 동일합니다DATA_TYPE. 이 열은 항상 값을 반환합니다.
SQL_DATETIME_SUB smallint datetime 및 SQL-92 간격 데이터 형식에 대한 하위 형식 코드입니다. 다른 데이터 형식의 경우 이 열은 .NULL
CHAR_OCTET_LENGTH int 문자 또는 정수 데이터 형식 열의 최대 길이(바이트)입니다. 다른 모든 데이터 형식에 대해 이 열은 .를 반환합니다 NULL.
ORDINAL_POSITION int 표에 있는 열의 서수 위치입니다. 테이블의 첫 번째 열은 1입니다. 이 열은 항상 값을 반환합니다.
IS_NULLABLE varchar(254) 테이블 열의 Null 허용 여부입니다. ISO 규칙을 따라 Null 허용 여부를 확인합니다. ISO SQL 규격 DBMS는 빈 문자열을 반환할 수 없습니다.

YES = 열에 포함 NULL할 수 있습니다.
NO = 열에 포함 NULL할 수 없습니다.

이 열은 null 허용을 알 수 없는 경우 길이가 0인 문자열을 반환합니다.

이 열에 대해 반환되는 값은 열에 대해 반환된 값과 NULLABLE 다릅니다.
SS_DATA_TYPE tinyint 확장 저장 프로시저에서 사용되는 SQL Server 데이터 형식입니다.

자세한 내용은 ODBC 개요를 참조 하세요.

설명

  • sp_columns_ex는 @table_server 해당하는 OLE DB 공급자의 인터페이스 행 집합 IDBSchemaRowset 을 쿼리 COLUMNS 하여 실행됩니다. 반환되는 행을 제한하기 위해 @table_name, @table_schema, @table_catalog@column_name 매개 변수가 이 인터페이스에 전달됩니다.

  • sp_columns_ex 는 지정된 연결된 서버의 OLE DB 공급자가 인터페이스의 행 집합을 COLUMNS 지원하지 않는 경우 빈 결과 집합을 IDBSchemaRowset 반환합니다.

  • sp_columns_ex 는 구분된 식별자에 대한 요구 사항을 따릅니다. 자세한 내용은 데이터베이스 식별자를 참조 하세요.

사용 권한

스키마에 SELECT 대한 권한이 필요합니다.

예제

다음 예제에서는 연결된 서버의 JobTitle 데이터베이스에 있는 AdventureWorks2022 테이블 열의 HumanResources.Employee 데이터 형식을 반환Seattle1합니다.

EXEC sp_columns_ex 'Seattle1',
    'Employee',
    'HumanResources',
    'AdventureWorks2022',
    'JobTitle';