У меня есть триггер для вставки / обновления / удаления. Это работает нормально. Также мне нужен IP-адрес клиента, с которого вносятся изменения. Это мне нужно в T-SQL, то есть не в любой веб-форме, а в SQL / T-SQL, пока мой триггер будет запущен.
Также я перешел на другую сторону и понял, что в основной базе данных есть хранимая процедура с именем 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?
Смиренный запрос :
Прежде чем отвечать / комментировать / понижать голосование, я бы попросил вас сначала тщательно разобраться с вопросом. Я нашел, что некоторые парни комментировали / понижали голос без должного прохождения вопроса. Нет проблем, все делают ошибки. Но не каждый раз ошибаюсь. :)