相关疑难解决方法(0)

如何从SQL Server 2008本身获取客户端IP地址?

我有一个插入/更新/删除触发器.这工作正常.此外,我需要客户端的IP地址来进行更改.我需要在T-SQL中,这意味着,不是在任何Web表单中,而是在SQL/T-SQL中,而我的触发器将被触发.

我也去了,并得到了master数据库中存储的程序xp_cmdshell,当执行时ipconfig我们可以得到IP地址.我认为这只有在您拥有数据库的管理权限时才有效.我的托管是一个共享托管,所以我没有这样的特权.还有其他出路吗?

请帮忙

提前致谢

请注意:我的SQL Server 2008数据库没有管理权限.我需要一个经过身份验证的用户的解决方案.

另一个更新:

我有解决方案,对我的方案有用的查询是

SELECT hostname, net_library, net_address
FROM sys.sysprocesses 
WHERE spid = @@SPID
Run Code Online (Sandbox Code Playgroud)

它根据需要执行,但只有一个问题,即net_address不是IP格式.以下是我的结果:

hostname    net_library     net_address
IPC03       TCP/IP          AE8F925461DE  
Run Code Online (Sandbox Code Playgroud)

我很想知道:

  1. 什么是net_address?是MAC地址还是某些IP地址等?

  2. 有没有办法将net_address转换为ip?

谦虚的要求:

在回答/评论/ downvoting之前,我会要求你首先彻底解决这个问题.我发现有些人在没有正确处理问题的情况下进行了评论/评论.没有问题,每个人都会犯错误.但不是每次都犯错误.:)

.net sql sql-server asp.net sql-server-2008

28
推荐指数
4
解决办法
7万
查看次数

如何从Sproc中识别存储过程的调用者

我有一个已弃用的存储过程,不应再从代码中调用,但有一些系统仍在调用它.这是一个生产服务器,因此我对它进行非常有限的间接访问以执行诊断.

有没有办法确定从sproc中调用特定存储过程的机器?诸如@@ CallingMachineIP或@@ CallingMachineName之类的东西

sql stored-procedures diagnostics sql-server-2008

11
推荐指数
2
解决办法
4884
查看次数