sp_sproc_columns(Transact-SQL)

적용 대상:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System(PDW)Microsoft Fabric의 SQL 분석 엔드포인트Microsoft Fabric의 Warehouse

현재 환경에서 단일 저장 프로시저 또는 사용자 정의 함수에 대한 열 정보를 반환합니다.

Transact-SQL 구문 표기 규칙

구문

sp_sproc_columns
    [ [ @procedure_name = ] N'procedure_name' ]
    [ , [ @procedure_owner = ] N'procedure_owner' ]
    [ , [ @procedure_qualifier = ] N'procedure_qualifier' ]
    [ , [ @column_name = ] N'column_name' ]
    [ , [ @ODBCVer = ] ODBCVer ]
    [ , [ @fUsePattern = ] fUsePattern ]
[ ; ]

인수

[ @procedure_name = ] N'procedure_name'

카탈로그 정보를 반환하는 데 사용되는 프로시저의 이름입니다. @procedure_name nvarchar(390)이며, 기본값은 현재 데이터베이스의 %모든 테이블을 의미합니다. 와일드카드 패턴 일치가 지원됩니다.

[ @procedure_owner = ] N'procedure_owner'

프로시저 소유자의 이름입니다. @procedure_owner 기본값NULL인 nvarchar(384)입니다. 와일드카드 패턴 일치가 지원됩니다. @procedure_owner 지정하지 않으면 기본 DBMS(데이터베이스 관리 시스템)의 기본 프로시저 표시 유형 규칙이 적용됩니다.

현재 사용자가 지정된 이름의 프로시저를 소유하는 경우 해당 프로시저에 대한 정보가 반환됩니다. @procedure_owner 지정되지 않고 현재 사용자가 지정된 이름의 sp_sproc_columns 프로시저를 소유하지 않는 경우 데이터베이스 소유자가 소유한 지정된 이름의 프로시저를 찾습니다. 프로시저가 있는 경우 해당 열에 대한 정보가 반환됩니다.

[ @procedure_qualifier = ] N'procedure_qualifier'

프로시저 한정자의 이름입니다. @procedure_qualifier sysname이며 기본값은 .입니다NULL. 다양한 DBMS 제품은 테이블(<qualifier>.<owner>.<name>)에 대해 세 부분으로 구성된 명명을 지원합니다. SQL Server에서 이 매개 변수는 데이터베이스 이름을 나타냅니다. 일부 제품에서는 테이블 데이터베이스 환경의 서버 이름을 나타냅니다.

[ @column_name = ] N'column_name'

단일 열이며 카탈로그 정보의 열이 하나만 필요한 경우에 사용됩니다. @column_name 기본값NULL인 nvarchar(384)입니다. @column_name 생략하면 모든 열이 반환됩니다. 와일드카드 패턴 일치가 지원됩니다. 최대 상호 운용성을 위해 게이트웨이 클라이언트는 ISO 표준 패턴 일치(% 및 _ wild카드 문자)만 가정해야 합니다.

[ @ODBCVer = ] ODBCVer

사용 중인 ODBC 버전입니다. @ODBCVer ODBC 버전 2.0을 나타내는 기본값2인 int입니다. ODBC 버전 2.0과 ODBC 버전 3.0의 차이점에 대한 자세한 내용은 ODBC 버전 3.0에 대한 ODBC SQLProcedureColumns 사양을 참조하세요.

[ @fUsePattern = ] fUsePattern

밑줄(), 백분율(_) 및 대괄호(%[]) 문자가 wild카드 문자로 해석되는지 여부를 결정합니다. @fUsePattern 비트이며 기본값은 .입니다1. 유효한 값은 0 (패턴 일치가 꺼져 있습니다) 및 1 (패턴 일치가 켜집니다).

반환 코드 값

없음

결과 집합

열 이름 데이터 형식 설명
PROCEDURE_QUALIFIER sysname 프로시저 한정자 이름입니다. 이 열은 .일 NULL수 있습니다.
PROCEDURE_OWNER sysname 프로시저 소유자 이름입니다. 이 열은 항상 값을 반환합니다.
PROCEDURE_NAME nvarchar(134) 프로시저 이름입니다. 이 열은 항상 값을 반환합니다.
COLUMN_NAME sysname 반환된 각 열의 TABLE_NAME 열 이름입니다. 이 열은 항상 값을 반환합니다.
COLUMN_TYPE smallint 이 필드는 항상 값을 반환합니다.

0 = SQL_PARAM_TYPE_UNKNOWN
1 = SQL_PARAM_TYPE_INPUT
2 = SQL_PARAM_TYPE_OUTPUT
3 = SQL_RESULT_COL
4 = SQL_PARAM_OUTPUT
5 = SQL_RETURN_VALUE
DATA_TYPE smallint ODBC 데이터 형식에 대한 정수 코드입니다. 이 데이터 형식을 ISO 형식에 매핑할 수 없는 경우 값은 다음과 같습니다 NULL. 네이티브 데이터 형식 이름이 열에 TYPE_NAME 반환됩니다.
TYPE_NAME sysname 데이터 형식의 문자열 표현입니다. 이 값은 기본 DBMS에서 제공하는 데이터 형식 이름입니다.
PRECISION int 유효 자릿수입니다. 열의 PRECISION 반환 값은 base 10입니다.
LENGTH int 데이터의 전송 크기입니다.
SCALE smallint 소수점 오른쪽에 있는 자릿수입니다.
RADIX smallint 숫자 형식의 기준입니다.
NULLABLE smallint Null 허용 여부를 지정합니다.

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

열에 null을 YES 포함할 수 있는지 여부와 NO 열에 null을 포함할 수 없는 경우를 표시합니다.

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

이 열에 대해 반환되는 값은 열에 대해 반환된 값과 NULLABLE 다릅니다.
SS_DATA_TYPE tinyint 확장 저장 프로시저에서 사용하는 SQL Server 데이터 형식입니다. 자세한 내용은 데이터 형식(Transact-SQL)을 참조하세요.

설명

sp_sproc_columns 는 ODBC와 동일합니다 SQLProcedureColumns . 반환된 결과는 프로PROCEDURE_OWNERPROCEDURE_NAME시저 정의에 매개 변수가 표시되는 순서에 따라 PROCEDURE_QUALIFIER정렬됩니다.

사용 권한

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