srv_paramdata (拡張ストアド プロシージャ API)
重要 : |
---|
この機能は、Microsoft SQL Server の将来のバージョンで削除されます。新規の開発作業ではこの機能を使用しないようにし、現在この機能を使用しているアプリケーションはできるだけ早く修正してください。代わりに、CLR 統合を使用してください。 |
リモート ストアド プロシージャ呼び出しのパラメータの値を返します。この関数に代わって srv_paraminfo 関数が使用されるようになりました。
構文
void * srv_paramdata (
SRV_PROC *
srvproc
,
int
n
);
引数
- srvproc
特定のクライアント接続のためのハンドル (この場合は、リモート ストアド プロシージャ呼び出しを受け取るハンドル) である SRV_PROC 構造体を指すポインタです。この構造体には、アプリケーションとクライアントの間の通信やデータを管理するために、拡張ストアド プロシージャ ライブラリで使用する情報が格納されます。
- n
パラメータの番号です。最初のパラメータは 1 です。
戻り値
パラメータ値を指すポインタを返します。n 番目のパラメータが NULL である場合、n 番目のパラメータがない場合、またはリモート ストアド プロシージャがない場合には、NULL を返します。パラメータ値が文字列である場合、NULL 終端ではないこともあります。文字列の長さを判断するには、srv_paramlen を使用します。
パラメータが Microsoft SQL Server データ型のいずれかである場合、この関数は次の値を返します。ポインタ データには、データ型に対する有効なポインタ (VP) か、NULL か、該当なし (N/A) かを示す情報と、ポインタが指すデータの内容が含まれます。
新しいデータ型 | 入力データ長 |
---|---|
BITN |
NULL: VP、NULL ゼロ: VP、NULL 255 以上 : N/A 255 未満 : N/A |
BIGVARCHAR |
NULL: NULL、N/A ゼロ: VP、NULL 255 以上 : VP、255 文字 255 未満 : VP、実際のデータ |
BIGCHAR |
NULL: NULL、N/A ゼロ: VP、255 個の空白 255 以上 : VP、255 文字 255 未満 : VP、実際のデータ + パディング (最大 255 文字) |
BIGBINARY |
NULL: NULL、N/A ゼロ: VP、255 個の 0x00 255 以上 : VP、255 バイト 255 未満 : VP、実際のデータ + パディング (最大 255 文字) |
BIGVARBINARY |
NULL: NULL、N/A ゼロ: VP、0x00 255 以上 : VP、255 バイト 255 未満 : VP、実際のデータ |
NCHAR |
NULL: NULL、N/A ゼロ: VP、255 個の空白 255 以上 : VP、255 文字 255 未満 : VP、実際のデータ + パディング (最大 255 文字) |
NVARCHAR |
NULL: NULL、N/A ゼロ: VP、NULL 255 以上 : VP、255 文字 255 未満 : VP、実際のデータ |
NTEXT |
NULL: N/A ゼロ: N/A 255 以上 : N/A 255 未満 : N/A |
* データが NULL 終端ではないため、255 文字を超えるデータが切り捨てられても警告は発生しません。
解説
パラメータ名がわかっている場合は、srv_paramnumber でパラメータ番号を取得できます。パラメータが NULL かどうかを判断する場合は、srv_paramlen を使用します。
パラメータを指定してリモート ストアド プロシージャを呼び出す場合、パラメータは名前で指定することも、名前を使用せずにその位置を指定して渡すこともできます。名前によるパラメータ指定と位置によるパラメータ指定を混合してリモート ストアド プロシージャを呼び出すと、エラーが発生します。エラーが発生しても SRV_RPC ハンドラは呼び出されますが、パラメータが存在しないと見なされ、srv_rpcparams は 0 を返します。
セキュリティ メモ : |
---|
拡張ストアド プロシージャのソース コードを十分に確認し、コンパイルした DLL をテストしたうえで実稼働サーバーにインストールしてください。セキュリティの確認およびテストの詳細については、Microsoft の Web サイトを参照してください。 |
参照
関連項目
srv_rpcparams (拡張ストアド プロシージャ API)