четверг, 23 августа 2012 г.

MS SQL 2008 IP адрес клиента

Задача: 
получить IP-адрес клиента (IP-дарес клиентского соединения)
(например для того чтобы записывать в лог адрес компьютера с которого производилось подключение)


Окружение и ограничения: 
база MS SQL 2008 на хостинге, прав администартора нет. Прав на процедуру dm_exec_connections нет.

Решение
(ключевую строчку выделил)


 select
   CONNECTIONPROPERTY('net_transport') AS net_transport,
   CONNECTIONPROPERTY('protocol_type') AS protocol_type,
   CONNECTIONPROPERTY('auth_scheme') AS auth_scheme,
   CONNECTIONPROPERTY('local_net_address') AS local_net_address,
   CONNECTIONPROPERTY('local_tcp_port') AS local_tcp_port,
   CONNECTIONPROPERTY('client_net_address') AS client_net_address 


Ссылки
Оригинал на английском
http://weblogs.sqlteam.com/peterl/archive/2010/03/20/Get-client-IP-address.aspx

Помощь в MSDN по свойству CONNECTIONPROPERTY
http://msdn.microsoft.com/en-us/library/bb895240.aspx

Комментариев нет:

Отправить комментарий