3

DBMS_SESSION.set_client_identifier関数を使用して値を取得することにより、Oracleのようにクライアント識別子のコンテキストを設定する方法があるかどうかを知りたいです。

誰/どのユーザー名が変更を加えたかなど、データの変更を追跡しようとしています。OLD値、NEW値、およびユーザー名をキャプチャするトリガーを作成する計画。

サーバーへの接続はプールされた接続を使用しているため、DBに接続するユーザー名を使用することは答えではありません。

誰かアイデアがありますか?

4

1 に答える 1

2

接続自体からプロパティを使用できない場合 (プールされているため)、 への呼び出しの後に追加情報を設定する必要がありますconnection.Open()。しかし、私があなたの質問を正しく読めば、それで問題ありません。

したがって、使用できるのは SQL ServersSET CONTEXT_INFOです。これにより、セッション/接続コンテキストに最大 128 の任意のバイトを格納でき、その後関数を使用してクエリを実行できますCONTEXT_INFO()。説明は>こちら< .

于 2010-12-14T20:54:46.650 に答える