2008-09-18 7 views
2

Я хотел бы сделать оба из следующих вещей:Как использовать system_user в триггере аудита, но все еще использовать пул соединений?

  1. использование аудита триггеров на моих таблицах базы данных, чтобы определить, какой пользователь обновляется, что;
  2. использование пулов соединений для повышения производительности

Для # 1, я использую «SYSTEM_USER» в триггере базы данных для идентификации пользователя, делая изменения, но это мешает мне делать # 2, которая требует общих строк подключения ,

Есть ли способ, чтобы я мог получить лучшее из обоих этих миров?

ASP.NET/SQL Server 2005

ответ

1

К сожалению, нет. Идентификация пользователя только из соединения с базой данных И совместное использование соединений с базой данных между пользователями является взаимоисключающим.

1

Храните пользователя в своем веб-приложении в базе данных и позволяйте вашим триггерам сходить с сохраненных данных. Возможно, было бы лучше, если бы веб-приложение обрабатывало всю информацию о регистрации в базе данных.

+0

К сожалению, нет простого способа узнать из триггера, который «пользователь» вносит изменения. Вам нужны вспомогательные поля в записи, чтобы привязать их к учетной записи, и вам придется тянуть сумасшедшие трюки, чтобы отслеживать пользователей для DELETE. – 2008-10-03 17:04:19