Bagikan melalui


srv_paramlen (EXTENDED Stored Procedure API)

Berlaku untuk:SQL Server

Penting

Fitur ini akan dihapus dalam versi SQL Server yang akan datang. Hindari menggunakan fitur ini dalam pekerjaan pengembangan baru, dan rencanakan untuk memodifikasi aplikasi yang saat ini menggunakan fitur ini. Gunakan integrasi CLR sebagai gantinya.

Mengembalikan panjang data parameter panggilan prosedur tersimpan jarak jauh. Fungsi ini telah digantikan oleh fungsi srv_paraminfo .

Sintaks

  
int srv_paramlen (  
SRV_PROC *  
srvproc  
,  
int  
n   
);  

Argumen

srvproc
Adalah penunjuk ke struktur SRV_PROC yang merupakan handel untuk koneksi klien tertentu (dalam hal ini, handel yang menerima panggilan prosedur tersimpan jarak jauh). Struktur berisi informasi yang digunakan pustaka EXTENDED Stored Procedure API untuk mengelola komunikasi dan data antara aplikasi dan klien.

n
Menunjukkan jumlah parameter. Parameter pertama adalah 1.

Mengembalikan

Panjang aktual, dalam byte, dari data parameter. Jika tidak ada parameter nth atau tidak ada prosedur tersimpan jarak jauh, parameter tersebut mengembalikan -1. Jika parameter nth adalah NULL, parameter tersebut mengembalikan 0.

Fungsi ini mengembalikan nilai berikut, jika parameter adalah salah satu jenis data sistem Microsoft SQL Server 2005 (9.x) berikut.

Jenis data baru Panjang data input
BITN NULL: 1

NOL: 1

>=255: N/A

<255: N/A
BIGVARCHAR NULL: 0

NOL: 1

>=255: 255

<255: lensa aktual
BIGCHAR NULL: 0

NOL: 255

>=255: 255

<255: 255
BIGBINARY NULL: 0

NOL: 255

>=255: 255

<255: 255
BIGVARBINARY NULL: 0

NOL: 1

>=255: 255

<255: lensa aktual
NCHAR NULL: 0

NOL: 255

>=255: 255

<255: 255
NVARCHAR NULL: 0

NOL: 1

>=255: 255

<255: lensa aktual
NTEXT NULL: -1

NOL: -1

>=255: -1

<255: -1

* lensa aktual = Panjang string karakter multibyte (cch)

Keterangan

Setiap parameter prosedur tersimpan jarak jauh memiliki panjang data aktual dan maksimum. Untuk jenis data panjang tetap standar yang tidak mengizinkan nilai null, panjang aktual dan maksimumnya sama. Untuk jenis data dengan panjang variabel, panjangnya dapat bervariasi. Misalnya, parameter yang dinyatakan sebagai varchar(30) dapat memiliki data yang panjangnya hanya 10 byte. Panjang aktual parameter adalah 10 dan panjang maksimumnya adalah 30. Fungsi srv_paramlen mendapatkan panjang data aktual, dalam byte, dari prosedur tersimpan jarak jauh. Untuk mendapatkan panjang data maksimum parameter, gunakan srv_parammaxlen.

Ketika panggilan prosedur tersimpan jarak jauh dilakukan dengan parameter, parameter dapat diteruskan baik berdasarkan nama atau berdasarkan posisi (tidak disebutkan namanya). Jika panggilan prosedur tersimpan jarak jauh dilakukan dengan beberapa parameter yang diteruskan oleh nama dan beberapa diteruskan oleh posisi, kesalahan terjadi. Handler SRV_RPC masih dipanggil, tetapi muncul seolah-olah tidak ada parameter dan srv_rpcparams mengembalikan 0.

Penting

Anda harus meninjau kode sumber prosedur tersimpan yang diperluas secara menyeluruh, dan Anda harus menguji DLL yang dikompilasi sebelum menginstalnya di server produksi. Untuk informasi tentang peninjauan dan pengujian keamanan, lihat situs Web Microsoft ini.

Lihat Juga

srv_paraminfo (EXTENDED Stored Procedure API)
srv_rpcparams (EXTENDED Stored Procedure API)