다음을 통해 공유


srv_paramlen(확장 저장 프로시저 API)

적용 대상: SQL Server

Important

SQL Server의 이후 버전에서는 이 기능이 제거됩니다. 새 개발 작업에서는 이 기능을 사용하지 않도록 하고, 현재 이 기능을 사용하는 애플리케이션은 수정하세요. 대신 CLR 통합을 사용합니다.

원격 저장 프로시저 호출 매개 변수의 데이터 길이를 반환합니다. 이 함수는 srv_paraminfo 함수로 대체되었습니다.

구문

  
int srv_paramlen (  
SRV_PROC *  
srvproc  
,  
int  
n   
);  

인수

srvproc
특정 클라이언트 연결에 대한 핸들인 SRV_PROC 구조체에 대한 포인터입니다(이 경우 원격 저장 프로시저 호출을 받은 핸들). 이 구조에는 확장 저장 프로시저 API 라이브러리가 애플리케이션과 클라이언트 간의 통신 및 데이터를 관리하는 데 사용하는 정보가 포함됩니다.

n
매개 변수의 번호를 나타냅니다. 첫 번째 매개 변수는 1입니다.

반품

매개 변수 데이터의 실제 길이(바이트)입니다. n번째 매개 변수가 없거나 원격 저장 프로시저가 없으면 -1을 반환합니다. n번째 매개 변수가 NULL이면 0을 반환합니다.

매개 변수가 다음 Microsoft SQL Server 2005(9.x) 시스템 데이터 형식 중 하나인 경우 이 함수는 다음 값을 반환합니다.

새 데이터 형식 입력 데이터 길이
BITN NULL: 1

0: 1

>=255: 해당 내용

<255: 해당 내용
BIGVARCHAR NULL: 0

0: 1

>=255: 255

<255: 실제
BIGCHAR NULL: 0

ZERO: 255

>=255: 255

<255: 255
BIGBINARY NULL: 0

ZERO: 255

>=255: 255

<255: 255
BIGVARBINARY NULL: 0

0: 1

>=255: 255

<255: 실제
NCHAR NULL: 0

ZERO: 255

>=255: 255

<255: 255
NVARCHAR NULL: 0

0: 1

>=255: 255

<255: 실제
NTEXT NULL: -1

0: -1

>=255: -1

<255: -1

* 실제 len = 멀티바이트 문자열의 길이(cch)

설명

각 원격 저장 프로시저 매개 변수에는 실제 및 최대 데이터 길이가 있습니다. null 값을 허용하지 않는 표준 고정 길이 데이터 형식의 경우 실제 길이와 최대 길이는 동일합니다. 가변 길이 데이터 형식의 경우 길이가 다를 수 있습니다. 예를 들어 varchar(30)선언된 매개 변수에는 10바이트 길이의 데이터가 있을 수 있습니다. 매개 변수의 실제 길이는 10이고 최대 길이는 30입니다. srv_paramlen 함수는 원격 저장 프로시저의 실제 데이터 길이(바이트)를 가져옵니다. 매개 변수의 최대 데이터 길이를 가져오려면 srv_parammaxlen을 사용합니다.

매개 변수를 사용하여 원격 저장 프로시저 호출을 수행할 때 매개 변수는 이름 또는 위치(이름 없음)로 전달될 수 있습니다. 이름으로 전달된 일부 매개 변수와 위치로 전달된 일부 매개 변수를 사용하여 원격 저장 프로시저 호출을 수행하면 오류가 발생합니다. SRV_RPC 처리기는 여전히 호출되지만 매개 변수가 없는 것처럼 나타나고 srv_rpcparams 0을 반환합니다.

Important

확장 저장 프로시저의 소스 코드를 철저히 검토해야 하며, 프로덕션 서버에 설치하기 전에 컴파일된 DLL을 테스트해야 합니다. 보안 검토 및 테스트에 대한 자세한 내용은 이 Microsoft 웹 사이트를 참조하세요.

참고 항목

srv_paraminfo(확장 저장 프로시저 API)
srv_rpcparams(확장 저장 프로시저 API)