srv_paramdata (Utökat Stored Procedure API)

Gäller för:SQL Server

Important

Den här funktionen tas bort i en framtida version av SQL Server. Undvik att använda den här funktionen i nytt utvecklingsarbete och planera att ändra program som för närvarande använder den här funktionen. Använd istället CLR-integration.

Returnerar värdet av en fjärrlagrad proceduranropsparameter. Denna funktion har ersatts av srv_paraminfo funktionen.

Syntax

  
void * srv_paramdata (  
SRV_PROC *  
srvproc  
,  
int  
n   
);  

Arguments

srvproc
Är en pekare till den SRV_PROC struktur som är handtaget för en viss klientanslutning (i detta fall handtaget som tog emot anropet för fjärrlagrad procedur). Strukturen innehåller information som biblioteket Extended Stored Procedure använder för att hantera kommunikation och data mellan applikationen och klienten.

n
Är numret på parametern. Den första parametern är nummer 1.

Returns

En pekare till parametervärdet. Om den n:te parametern är NULL, det inte finns någon n:te parameter, eller ingen fjärrlagrad procedur, returnerar NULL. Om parametervärdet är en sträng kanske det inte är nullterminerat. Använd srv_paramlen för att bestämma strängens längd.

Denna funktion returnerar följande värden, om parametern är en av Microsoft SQL Server-datatyperna. Pekardata inkluderar om pekaren för datatypen är gyldig (VP), NULL eller inte tillämplig (N/A), samt innehållet i den data som pekas på.

Nya datatyper Indatans längd
BITN NULL: VP, NULL

NOLL: VP, NULL

>=255: Ej/A

<255: Ej tillgänglig
BIGVARCHAR NULL: NULL, Ej/A

NOLL: VP, NULL

>=255: VP, 255 tecken

<255: VP, faktiska data
BIGCHAR NULL: NULL, Ej/A

NOLL: VP, 255 platser

>=255: VP, 255 tecken

<255: VP, faktisk data + utfyllnad (upp till 255)
BIGBINARY NULL: NULL, Ej/A

NOLL: VP, 255 0x00

>=255: VP, 255 byte

<255: VP, faktisk data + utfyllnad (upp till 255)
BIGVARBINARY NULL: NULL, Ej/A

NOLL: VP, 0x00

>=255: VP, 255 byte

<255: VP, faktiska data
NCHAR NULL: NULL, Ej/A

NOLL: VP, 255 platser

>=255: VP, 255 tecken

<255: VP, faktisk data + utfyllnad (upp till 255)
NVARCHAR NULL: NULL, Ej/A

NOLL: VP, NULL

>=255: VP, 255 tecken

<255: VP, faktiska data
NTEXT NULL: Ej tillgängligt

NOLL: Ej tillgängligt

>=255: Ej/A

<255: Ej tillgänglig

* data är inte nullterminerad; ingen varning ges vid trunkering för data >255 tecken.

Remarks

Om du känner till parameternamnet kan du använda srv_paramnumber för att få parameternumret. För att avgöra om en parameter är NULL, använd srv_paramlen.

När ett fjärrlagrat proceduranrop görs med parametrar kan parametrarna skickas via namn eller position (utan namn). Om anropet för fjärrlagrad procedur görs med vissa parametrar som skickas med namn och några med position, uppstår ett fel. Om ett fel uppstår anropas fortfarande SRV_RPC-handlaren, men det verkar som om det inte fanns några parametrar och srv_rpcparams returnerar 0.

Important

Du bör noggrant granska källkoden för utökade lagrade procedurer, och du bör testa de kompilerade DLL:erna innan du installerar dem på en produktionsserver. För information om säkerhetsgranskning och testning, se denna Microsoft-webbplats.