У меня есть триггер для вставки/обновления/удаления. Это прекрасно работает. Кроме того, мне нужен IP-адрес клиента, с которого сделаны изменения. То, что мне нужно в T-SQL, то есть не в любой веб-форме, а в SQL/T-SQL, пока мой триггер будет запущен.Как получить IP-адрес клиента от самого SQL Server 2008?
Также я ушел, и получил, что там хранится процедура в основной базе данных с именем xp_cmdshell
, которая при выполнении с ipconfig
мы можем получить IP-адрес. Я думаю, что это будет работать только тогда, когда у вас есть административный доступ к базе данных. Мой хостинг - это общий хостинг, поэтому у меня нет такой привилегии. Есть ли другой выход?
Пожалуйста, помогите
Спасибо заранее
Обратите внимание: Я не имею права администратора на моем SQL Server базы данных 2008. Мне нужно решение как аутентифицированный пользователь.
Еще одно обновление:
Я получил решение, запрос, который будет работать для моего сценария
SELECT hostname, net_library, net_address
FROM sys.sysprocesses
WHERE spid = @@SPID
Он выполняет по мере необходимости, но есть только один вопрос, что net_address не в формате IP. ниже мой результат:
hostname net_library net_address
IPC03 TCP/IP AE8F925461DE
Я стремлюсь узнать:
Что net_address здесь? Является ли MAC-адрес или какой-то IP-адрес и т. Д.?
Есть ли способ конвертировать net_address в ip?
Humble запрос:
Прежде чем ответить/комментирование/downvoting, я хотел бы просить вас, чтобы пройти через этот вопрос, во-первых, тщательно. Я обнаружил, что некоторые ребята комментировали/сокращали без должного рассмотрения вопроса. Нет проблем, все делают ошибки. Но не каждый раз ошибаться. :)
Вы упомянули, что ваша база данных размещена, но как работает приложение? В большинстве приложений ASP.NET пользователи подключаются к веб-сайту, а затем веб-сайт подключается к базе данных. Таким образом, сервер базы данных не знает, кто или где «реальный» конечный пользователь. Если вы можете дать более подробную информацию о своем приложении и как пользователи подключаются к базе данных, у кого-то может быть предложение. – Pondlife
Вы можете найти информацию о ** net_address ** с http://msdn.microsoft.com/en-us/library/ms179881.aspx –