#sql-server
#sql-сервер
Вопрос:
У меня есть общая учетная запись службы, которая используется веб-приложением для вызова хранимой процедуры для удаления записей во временной таблице, которая у меня есть. Хранимая процедура получает идентификатор веб-пользователя (который я хочу отслеживать).
Для обновлений и вставок это просто — вставьте / обновите и убедитесь, что поле userId заполнено идентификатором пользователя веб-приложения.
Я застрял на удалениях — единственный механизм, который я могу придумать, — это обновить поле userId с идентификатором веб-пользователя, а затем выполнить удаление. Очевидно, что это на один шаг больше, чем я хочу, но это также приводит к дополнительной записи в таблице истории, которая мне не нужна.
Существует ли наилучшая практика для решения этой проблемы?… или у меня уже есть наилучшее доступное решение здесь?
Комментарии:
1. Временные таблицы не являются таблицами аудита. Они могут использоваться как часть аудита, но сами по себе недостаточны. Похоже, что у вас есть
UserID
столбец в таблице, который логически вообще не нужен, за исключением записи пользователя, выполнившего определенное действие — которое, собственно, является частью только записи аудита.2. Я это понимаю. Я ищу рекомендации по отслеживанию идентификаторов пользователей для удалений во временной таблице, поступающих через учетную запись службы.
3. Просто перечитайте ваш комментарий — подразумевается ли, что правильный способ структурировать это для начала — иметь третью таблицу для отслеживания аудита?