知识大全 用T-SQL获得当前连接客户端IP和机器名

Posted

篇首语:世上最累人的事,莫过于虚伪的过日子。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 用T-SQL获得当前连接客户端IP和机器名相关的知识,希望对你有一定的参考价值。

用T-SQL获得当前连接客户端IP和机器名  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  Create proc usp_getClient_infor   as   set nocount on    Declare @rc int  Declare @RowCount int    Select @rc=   Select @RowCount=     begin   //create temp table save sp_who information   create table #tspid(   spid int null    ecid int null    status nchar( ) null    loginname nchar( ) null    hostname nchar( ) null    blk bit null    dbname nchar( ) null    cmd nchar( )   )     //create temp table save all SQL client IP and hostname and login time  Create table #userip(   [id]int identity( )    txt varchar( )   )     //Create result table to return recordset  Create table #result(   [id]int identity( )    ClientIP varchar( )    hostname nchar( )    login_time datetime default(getdate())     )   //get host name by exec sp_who insert #tspid from sp_who   insert into #tspid(spid ecid status loginname hostname blk dbname cmd) exec sp_who     declare @cmdStr varchar( )    @hostName nchar( )    @userip varchar( )    @sendstr varchar( )        //declare a cursor from table #tspid  declare tspid cursor   for select distinct hostname from #tspid with (nolock) where spid>   for read only    open tspid    fetch next from tspid into @hostname    While @@FETCH_STATUS =     begin   select @cmdStr= ping +rtrim(@hostName)      insert into #userip(txt) exec master xp_cmdshell @cmdStr       select @rowcount=count(id) from #userIP       if @RowCount= //no IP feedback package   begin   insert into #Result(ClientIP hostname) values( Can not get feedback package from Ping! @hostname)   end   if @RowCount>    begin   select @userip=substring(txt charindex( [ txt)+ charindex( ] txt) charindex( [ txt) )    from #userIP   where txt like Pinging%       insert into #Result(ClientIP hostname) values(@userIP @hostname)   end   select @rc=@@error   if @rc=    truncate table #userip //clear #userIP table      fetch next from tspid into @hostname   end     close tspid  deallocate tspid    select * from #result with(nolock)    drop table #tspid   drop table #userip  drop table #result  end  go  exec usp_getClient_infor cha138/Article/program/SQLServer/201311/22055

相关参考

知识大全 连接oracle数据库及故障解决办法

  如何配置才能使客户端连到数据库  要使一个客户端机器能连接oracle数据库需要在客户端机器上安装oracle的客户端软件唯一的例外就是java连接数据库的时候可以用jdbcthin模式不用装or

知识大全 .net通过获取客户端IP地址反查出用户的计算机名

.net通过获取客户端IP地址反查出用户的计算机名  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 

知识大全 连接oracle的总结(关于tnsname和监听)

该文是我连接oracle的总结特别适合于程序开发人员与oracle菜鸟  如何配置才能使客户端连到数据库要使一个客户端机器能连接oracle数据库需要在客户端机器上安装oracle

知识大全 校园网怎么用无线交换机

校园网怎么用无线交换机,在校园网的客户端内,怎样用无线路由器,直接当无线交换机使用?校园网如果不需要拨号,是静态IP的,建议还是当路由器用,WAN接校园网交换机线路,设置成静态IP连接,DNS等还是按

知识大全 教你一简单办法 用Java获得IP地址

教你一简单办法用Java获得IP地址  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  如何用Jav

知识大全 userenv和sys

  这两个函数用来记录连接的session信息经常用于触发器中记录客户端的连接信息(比如IP)我比较关注的是sessionid和ip但是selectuserenv(sessionid)得到的并不是用户

知识大全 基于单件模式的数据库连接组件的设计

  摘要当前在开发多用户信息管理系统时常用的数据库连接方法存在着不足当客户端较多时会在服务端建立过多的连接占用服务器很多宝贵的资源针对这种不足提出一种改进的方案结合单件设计模式的特点和组件的技术建立了

知识大全 Asp.net获取客户端IP常见代码存在的伪造IP问题探讨

Asp.net获取客户端IP常见代码存在的伪造IP问题探讨  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一

知识大全 asp.net获取客户端IP地址网卡

asp.net获取客户端IP地址网卡  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &n

知识大全 Java开发的WebService获取客户端IP地址

Java开发的WebService获取客户端IP地址  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!