Tengo un disparador para insertar/actualizar/eliminar. Eso está funcionando bien. Además, necesito la dirección IP del cliente desde donde se realizan los cambios. Eso es lo que necesito en T-SQL, es decir, no en ninguna forma web, sino en SQL/T-SQL mientras mi desencadenante será disparado.¿Cómo obtener la dirección IP del cliente de SQL Server 2008?
También me di cuenta de que hay un procedimiento almacenado en la base de datos maestra llamada xp_cmdshell
que cuando se ejecuta con ipconfig
podemos obtener la dirección IP. Creo que esto funcionará solo cuando tengas acceso administrativo a la base de datos. Mine hosting es un alojamiento compartido, por lo que no tengo ese privilegio. ¿Hay alguna otra salida?
Por favor, ayuda
Gracias de antemano
Tenga en cuenta: no tengo privilegios administrativos en mi base de datos de SQL Server 2008. Necesito una solución como usuario autenticado.
Otra actualización:
tengo la solución, la consulta que va a trabajar para mi escenario es
SELECT hostname, net_library, net_address
FROM sys.sysprocesses
WHERE spid = @@SPID
Se ejecuta como sea necesario, pero sólo hay un problema, que NET_ADDRESS no es en formato IP. A continuación se muestra resultado mía:
hostname net_library net_address
IPC03 TCP/IP AE8F925461DE
Estoy ansioso por saber:
¿Cuál es NET_ADDRESS aquí? ¿Es la dirección MAC o alguna dirección IP, etc.?
¿Hay alguna forma de convertir net_address a ip?
humilde petición:
Antes de responder/comentarios/downvoting, yo pediría que se vaya a través de la pregunta, en primer lugar, a fondo. Encontré a algunos muchachos comentados/downvoted sin pasar la pregunta correctamente. Sin problemas, todos cometemos errores. Pero no todas las veces cometer un error. :)
Menciona que su base de datos está alojada, pero ¿cómo funciona la aplicación? En la mayoría de las aplicaciones ASP.NET, los usuarios se conectan a un sitio web y luego el sitio web se conecta a la base de datos. Entonces, el servidor de la base de datos no tiene idea de quién o dónde está el usuario final "real". Si puede dar más detalles sobre su aplicación y cómo los usuarios se conectan a la base de datos, alguien puede tener una sugerencia. – Pondlife
Puede encontrar los detalles sobre ** net_address ** de http://msdn.microsoft.com/en-us/library/ms179881.aspx –