拡張ストアド プロシージャの実行における特性
適用対象: SQL サーバー
重要
この機能は、 SQL Serverの将来のバージョンで削除される予定です。 新規の開発作業ではこの機能を使用しないようにし、現在この機能を使用しているアプリケーションは修正することを検討してください。 代わりに CLR Integration を使用してください。
拡張ストアド プロシージャの実行には次の 3 つの特性があります。
拡張ストアド プロシージャ関数は、Microsoft SQL Server のセキュリティ コンテキストで実行されます。
拡張ストアド プロシージャ関数は、SQL Server のプロセス空間で実行されます。
拡張ストアド プロシージャの実行に関連付けられているスレッドは、クライアント接続に使用するスレッドと同じです。
重要
システム管理者は、拡張ストアド プロシージャをサーバーに追加し、他のユーザーに実行権限を許可する前に、各拡張ストアド プロシージャに有害なコードや悪意のあるコードが含まれていないことを十分に確認する必要があります。
拡張ストアド プロシージャ DLL が読み込まれた後、SQL Server が停止するか、管理者が DBCC DLL_name (FREE) を使用して DLL を明示的にアンロードするまで、DLL はサーバーのアドレス空間に読み込まれたままになります。
拡張ストアド プロシージャは、EXECUTE ステートメントを使用して Transact-SQL からストアド プロシージャとして実行できます。
EXECUTE @retval = xp_extendedProcName @param1, @param2 OUTPUT
パラメーター
@ retval
戻り値です。
@ param1
入力パラメーターです。
@ param2
入力/出力パラメーターです。
注意事項
拡張ストアド プロシージャは、パフォーマンスの向上と SQL Server 機能の拡張を提供します。 ただし、拡張ストアド プロシージャ DLL と SQL Server は同じアドレス空間を共有するため、問題のプロシージャが SQL Server の機能に悪影響を与える可能性があります。 拡張ストアド プロシージャ DLL によってスローされる例外は SQL Server によって処理されますが、SQL Server データ領域が破損する可能性があります。 セキュリティ上の予防措置として、拡張ストアド プロシージャを SQL Server に追加できるのは SQL Server システム管理者だけです。 これらのプロシージャは詳細にテストしてからインストールする必要があります。
参照
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示