テーブルに対して INSERT/DELETE 操作を実行するプロシージャと、2 番目のテーブルの変更をログに記録するトリガーがあります。
必要なのは、変更を行ったユーザーを記録するために、プロシージャ コールをインスタンス化したセキュリティ ユーザー ID をトリガーに渡すことです。
これを行う唯一の方法は、SET CONTEXT_INFOとCONTEXT_INFO()を使用することです。
問題は、番号 (ユーザー ID) を抽出できないことです。たとえば、次のコードです。
SET CONTEXT_INFO 10001
GO
SELECT CAST(CONTEXT_INFO() AS INT)
0 を返します。