Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

EXEC MASTER.dbo.xp_fileexist

Estas en el tema de EXEC MASTER.dbo.xp_fileexist en el foro de SQL Server en Foros del Web. Ese procedimiento busca un archivo ruta+NombreArchivo , si lo encuentra devuelve 1, caso contrario 0. Tengo una duda con ese procedimiento. Me funciona cuando busco ...
  #1 (permalink)  
Antiguo 19/12/2012, 17:03
 
Fecha de Ingreso: septiembre-2005
Mensajes: 74
Antigüedad: 18 años, 7 meses
Puntos: 0
EXEC MASTER.dbo.xp_fileexist

Ese procedimiento busca un archivo ruta+NombreArchivo , si lo encuentra devuelve 1, caso contrario 0.

Tengo una duda con ese procedimiento. Me funciona cuando busco un archivo en el disco duro, mi problema es que no puedo encontrar ese archivo cuando se encuentra en una carpeta compartida.

Alguien ha pasado por esto antes? cómo se soluciona?
Estoy entrando al management studio sql server 2008 r2, como windows authenticación.

Saludos.

Última edición por sirguille; 19/12/2012 a las 17:42
  #2 (permalink)  
Antiguo 19/12/2012, 17:44
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: EXEC MASTER.dbo.xp_fileexist

segun lo que he leido y lo que se, cuando ejecutas ese comando lo ejecuta sobre el servidor donde esta instalado el sql server, si quieres ver el contenido de un servidor que no tiene sql entonces lo que tendrias que hacer es mediante un bat u alguna aplicacion ya que sql no tendria permisos sobre el recurso compartido, la otra que se podria hacer y es solo un supuesto es que al usuario que ejecuta los servicios de sql se le den los permisos para ver el shared folder :P

saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 19/12/2012, 18:06
 
Fecha de Ingreso: septiembre-2005
Mensajes: 74
Antigüedad: 18 años, 7 meses
Puntos: 0
Respuesta: EXEC MASTER.dbo.xp_fileexist

Cita:
Iniciado por Libras Ver Mensaje
segun lo que he leido y lo que se, cuando ejecutas ese comando lo ejecuta sobre el servidor donde esta instalado el sql server, si quieres ver el contenido de un servidor que no tiene sql entonces lo que tendrias que hacer es mediante un bat u alguna aplicacion ya que sql no tendria permisos sobre el recurso compartido, la otra que se podria hacer y es solo un supuesto es que al usuario que ejecuta los servicios de sql se le den los permisos para ver el shared folder :P

saludos!
Estoy en el servidor donde está instalado el sql server.
Dentro abro el management studio 2008 y me logueo con windows authentication.
Ejecuto mi script para ver si hay un archivo en una carpeta del mismo disco duro del servidor, esta carpeta está como compartida.

El resultado es que no detecta mi archivo.

Hay alguna relación entre login de sql server y usuarios permitidos en una carpeta compartida?
  #4 (permalink)  
Antiguo 19/12/2012, 18:08
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: EXEC MASTER.dbo.xp_fileexist

Cita:
Iniciado por sirguille Ver Mensaje
Estoy en el servidor donde está instalado el sql server.
Dentro abro el management studio 2008 y me logueo con windows authentication.
Ejecuto mi script para ver si hay un archivo en una carpeta del mismo disco duro del servidor, esta carpeta está como compartida.

El resultado es que no detecta mi archivo.

Hay alguna relación entre login de sql server y usuarios permitidos en una carpeta compartida?
supongo que si :) revisa los permisos
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #5 (permalink)  
Antiguo 20/12/2012, 11:59
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: EXEC MASTER.dbo.xp_fileexist

100%, el usuario que ARRANCA los servicios, debe tener PERMISOS de "ver" las carpetas compartidas, de lo contrario, no funcionara el store procedure.
__________________
MCTS Isaias Islas
  #6 (permalink)  
Antiguo 21/12/2012, 11:11
 
Fecha de Ingreso: septiembre-2005
Mensajes: 74
Antigüedad: 18 años, 7 meses
Puntos: 0
Respuesta: EXEC MASTER.dbo.xp_fileexist

Es algo que se puede manejar de manera sencilla?, es que estoy en fase de análisis y no sé si incluirlo en mi documento... en caso sea muy complicado mejor lo obvio....

iislas: Cómo se cuál es el usuario que arranca los servicio?, te refieres a mi usuario con el que ingreso a sql server?, bueno yo ingreso con "windows authentication" y si te refieres a que si puedo entrar o no a la carpeta pues sí... cuando voy a Mi pc > disco >carpeta compartida>archivo.txt , si puedo entrar y manipular la carpeta borrar pegar...manualmente

Saludos
  #7 (permalink)  
Antiguo 21/12/2012, 11:24
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: EXEC MASTER.dbo.xp_fileexist

cuando instalas el sql se crea un usuario que arranca los servicios de sql server, casi siempre por default es el usuario de nt services, para revisar cual es vete al explorador de servicios de windows y ve con que usuario correo el servicio de sql y a ese dale permisos :), que tu usuario pueda ver la carpeta, crear etc no significa que sql pueda ya que es posible que se ejecuten con usuarios distintos :)

saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #8 (permalink)  
Antiguo 27/12/2012, 22:27
 
Fecha de Ingreso: septiembre-2005
Mensajes: 74
Antigüedad: 18 años, 7 meses
Puntos: 0
Respuesta: EXEC MASTER.dbo.xp_fileexist

Sí era eso, el usuario que arranca el servicio debe tener los privilegios para la carpeta compartida, gracias a todos.

Etiquetas: exec
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:10.