Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Ważna
Ta funkcja zostanie usunięta w przyszłej wersji programu SQL Server. Unikaj używania tej funkcji w nowych pracach programistycznych i zaplanuj modyfikowanie aplikacji, które obecnie korzystają z tej funkcji. Zamiast tego użyj integracji CLR.
Zwraca długość danych parametru wywołania procedury zdalnej. Funkcja ta została zastąpiona przez funkcję srv_paraminfo .
Syntax
int srv_paramlen (
SRV_PROC *
srvproc
,
int
n
);
Arguments
srvproc
Jest wskaźnikiem do struktury SRV_PROC, która jest uchwytem dla konkretnego połączenia klienta (w tym przypadku uchwytu, który otrzymał zdalne wywołanie procedury przechowywanej). Struktura zawiera informacje, które biblioteka API Extended Stored Procedure wykorzystuje do zarządzania komunikacją i danymi między aplikacją a klientem.
n
Wskazuje numer parametru. Pierwszy parametr to 1.
Zwroty
Rzeczywista długość danych parametrów w bajtach. Jeśli nie ma n-tegoparametru lub nie ma zdalnej procedury przechowywanej, zwraca się -1. Jeśli n-typarametr jest NULL, zwraca 0.
Funkcja ta zwraca następujące wartości, jeśli parametr jest jednym z następujących typów danych systemu Microsoft SQL Server 2005 (9.x).
| Nowe typy danych | Długość danych wejściowych |
|---|---|
| BITN |
NULL: 1 ZERO: 1 >=255: N/A <255: N/A |
| BIGVARCHAR |
NULL: 0 ZERO: 1 >=255: 255 <255:rzeczywisty Len |
| BIGCHAR |
NULL: 0 ZERO: 255 >=255: 255 <255: 255 |
| BIGBINARY |
NULL: 0 ZERO: 255 >=255: 255 <255: 255 |
| BIGVARBINARY |
NULL: 0 ZERO: 1 >=255: 255 <255:rzeczywisty Len |
| NCHAR |
NULL: 0 ZERO: 255 >=255: 255 <255: 255 |
| NVARCHAR |
NULL: 0 ZERO: 1 >=255: 255 <255:rzeczywisty Len |
| NTEKST |
NULL: -1 ZERO: -1 >=255: -1 <255: -1 |
* actual len = Długość ciągu znaków wielobajtowych (cch)
Remarks
Każdy parametr zdalnej procedury przechowywanej ma rzeczywistą i maksymalną długość danych. Dla standardowych typów danych o stałej długości, które nie dopuszczają wartości zerowych, rzeczywista i maksymalna długość są takie same. Dla typów danych o zmiennej długości długość może się różnić. Na przykład parametr zadeklarowany jako varchar(30) może zawierać dane o długości zaledwie 10 bajtów. Rzeczywista długość parametru wynosi 10, a maksymalna to 30. Funkcja srv_paramlen otrzymuje rzeczywistą długość danych w bajtach zdalnej procedury przechowywanej. Aby uzyskać maksymalną długość danych parametru, użyj srv_parammaxlen.
Gdy wywołane jest zdalne wywołanie procedury przechowywanej z parametrami, parametry te mogą być przekazywane zarówno według nazwy, jak i pozycji (bez nazwy). Jeśli zdalne wywołanie procedury przechowywanej zostanie wykonane z pewnymi parametrami przekazywanymi nazwą, a innymi według pozycji, występuje błąd. Obsługa SRV_RPC jest nadal wywoływana, ale wygląda na to, że nie ma żadnych parametrów i srv_rpcparams zwraca 0.
Ważna
Powinieneś dokładnie przejrzeć kod źródłowy rozszerzonych procedur przechowywanych i przetestować skompilowane pliki DLL przed instalacją ich na serwerze produkcyjnym. Informacje o przeglądzie i testowaniu bezpieczeństwa znajdziesz na tej stronie internetowej Microsoft.