comando user_name()

15/10/2003 - 14:09 por berrocal | Informe spam
Hola.

Trabajo contra SQL Server 2000, sobre Windows 2000, y me
gustaría saber si existe alguna manera de obtener el login
del usuario "user_name()", pero sin que me
devuelva "nombreDominioombreusuario", solo que devuelva
el "nombreusuario". Antes trabajaba contra Windows NT y al
ejecutar "Select user_name()" me devolvía solo el
nombreusuario sin el dominio.

Gracias.
 

Leer las respuestas

#1 Javier Loria
15/10/2003 - 16:09 | Informe spam
Hola:
Me parece que USER_NAME siempre ha devuelto el Dominio para usuarios de
Windows, podria ser que el NT usaras seguridad de SQL y por eso solo te
reportaba el usuario?
Podrias eliminar el dominio cortando lo que este a la izquierda del '\',
pero podrias meterte en problemas si usan tu aplicacion en un ambiente de
multiples dominios y con usuarios con Login iguales en varios dominios.
Si estas totalmente seguro que va a correr en un ambiente de un dominio,
o si quieres "normalizar" el resultado USER_NAME separando el dominio del
Usuario, puedes escribir de nuevo y vemos alguna funcion que los separe.
Saludos,


Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.
berrocal escribio:
Hola.

Trabajo contra SQL Server 2000, sobre Windows 2000, y me
gustaría saber si existe alguna manera de obtener el login
del usuario "user_name()", pero sin que me
devuelva "nombreDominioombreusuario", solo que devuelva
el "nombreusuario". Antes trabajaba contra Windows NT y al
ejecutar "Select user_name()" me devolvía solo el
nombreusuario sin el dominio.

Gracias.

Preguntas similares