Подтвердить что ты не робот

SQL Server - текущее имя пользователя

Какой я должен использовать для записи обновлений, сделанных пользователями?

  • SYSTEM_USER, или
  • ORIGINAL_LOGIN(), или
  • SUSER_SNAME()
4b9b3361

Ответ 1

SYSTEM_USER возвращает текущий исполняемый контекст, поэтому он может возвращать олицетворенный контекст

ORIGINAL_LOGIN() возвращает идентификатор пользователя, который первоначально подключался к экземпляру, поэтому независимо от того, олицетворен ли контекст или нет, он даст исходному пользователю, который вошел в систему, подходит для аудита.

SUSER_SNAME() Это используется, если вы хотите получить имя пользователя по SID, поэтому SUSER_SNAME можно вызвать с таким параметром, как SUSER_SNAME([server_user_sid]), но SID является необязательным, если вы не передадите этот параметр, который возвращается текущему пользователю.