SQL Trigger - заменить системного пользователя настраиваемым полем - PullRequest
1 голос
/ 21 марта 2011

У меня есть SQL-триггер, который используется для аудита моих таблиц базы данных. Данные изменяются через веб-интерфейс. Только аутентифицированные пользователи могут изменять / добавлять данные.

В триггере у меня есть строка кода, которая говорит

select @UserName = system_user

Вместо system_user я хочу, чтобы UserId (аутентифицированного веб-пользователя) был назначен на @UserName. Идентификатор пользователя находится в таблице для каждой строки в качестве одного из столбцов.

Чем я могу заменить system_user, чтобы получить этот эффект. заранее спасибо.

1 Ответ

1 голос
/ 21 марта 2011

Если это SQL-сервер, вы можете просто выполнить запрос из таблицы «Вставлено», как показано ниже:

select @UserName =(select Your_USERID_ColumnName from inserted)

В SQL Server, когда выполняются операции вставки / обновления и удаления, есть две виртуальные таблицы «Вставленные» и «Удаленные», к которым вы можете запросить

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...