sp_columns_ex(Transact-SQL)
적용 대상: SQL Server
지정한 연결된 서버 테이블에 대해 각 열마다 한 행씩 열 정보를 반환합니다. sp_columns_ex
는 @column_name 지정된 경우 특정 열에 대한 열 정보만 반환합니다.
구문
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';