Guardar en txt

11/11/2009 - 09:35 por José Antonio Muñoz | Informe spam
Hola a todos,

¿como puedo guardar el contenido de una variable de Sql Server en un archivo
txt de una forma sencilla y sin utilizar el comando bcp?

saludos,
José Antonio Muñoz

Preguntas similare

Leer las respuestas

#6 José Antonio Muñoz
11/11/2009 - 13:29 | Informe spam
Una cosita, se me olvidaba decirte que utilizo Sql Server 2008 Express y
tengo entendido que en esta versión no funciona el Agente de sql

José Antonio Muñoz.

"Carlos Sacristan" escribió en el mensaje de noticias
news:
Pues, yendo punto por punto:

-Efectivamente, como tú dices pueden darse muchas circunstancias. Puede
que el administrador de sistemas tenga establecidas ciertas limitaciones
en la ejecución de programas, pero si tu aplicación lo necesita hay que
tratarlo como un requisito más. Es decir, igual que necesitas SQL Server o
.NET para tu aplicación (un suponer), pues también necesitas que te
permita ejecutar bcp.

- Usar bcp no implica necesariamente el uso de xp_cmdshell. Puedes
ejecutar bcp dentro de un job y ejecutarlo posteriormente mediante
sp_start_job

- bcp se encuentra en el PATH del sistema cuando se instala SQL Server,
así que no hay que especificar su ubicación

En cualquier modo, si yo estuviera en tu caso (desarrollando una nueva
aplicación), lo que haría sería un procedimiento CLR que se encargara de
escribir a disco el resultado de esa variable. Mucho más eficiente y menos
problemático que usar automatización OLE


"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático


"José Antonio Muñoz" wrote in message
news:
Teniendo en cuenta que estoy desarrollando un script para poder
ejecutarlo en diferentes máquinas con Sql Server y siendo la utilidad BCP
un ejecutable externo. Que ocurriría si:

- No se puede ejecutar bcp.exe en algún Sistema Operativo como Windows
2003 Server que tiene restringido el uso y ejecución de ciertos
programas.
- Por algún motivo no se puede utilizar xp_cmdshell (en el sistema
operativo X no tiene permisos para ejecutar programas o comando de
ms-dos)
- bcp.exe se encuentra en alguna carpeta de sql server, al ejecutar bcp
con el comando xp_cmdshell ¿es necesario especificar la ruta donde se
encuentra la utilidad?

No se me ocurre otros inconvenientes, pero ejecutar un programa desde un
script de sql server ... no sé si sería buena idea. Ahora bien si tú me
dices que ejecutar bcp es algo rutinario desde un script de sql server e
independiente del sistema operativo y de la configuración de éste, lo
mismo me planteo utilizarlo.

saludos,
José Antonio Muñoz.

"Carlos Sacristan" escribió en el mensaje de noticias
news:
¿Por qué no quieres usar bcp? Creo que sería lo más sencillo...

"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático


"José Antonio Muñoz" wrote in message
news:
Hola a todos,

¿como puedo guardar el contenido de una variable de Sql Server en un
archivo txt de una forma sencilla y sin utilizar el comando bcp?

saludos,
José Antonio Muñoz










Respuesta Responder a este mensaje
#7 Carlos Sacristan
11/11/2009 - 13:38 | Informe spam
No es que no funcione, es que no existe SQL Agent en la versión Express.

La opción de usar bcp dentro de un job digamos que es una vía para salir del
paso. Pienso que lo mejor sería usar un procedimiento CLR

"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático


"José Antonio Muñoz" wrote in message
news:%
Una cosita, se me olvidaba decirte que utilizo Sql Server 2008 Express y
tengo entendido que en esta versión no funciona el Agente de sql

José Antonio Muñoz.

"Carlos Sacristan" escribió en el mensaje de noticias
news:
Pues, yendo punto por punto:

-Efectivamente, como tú dices pueden darse muchas circunstancias. Puede
que el administrador de sistemas tenga establecidas ciertas limitaciones
en la ejecución de programas, pero si tu aplicación lo necesita hay que
tratarlo como un requisito más. Es decir, igual que necesitas SQL Server
o .NET para tu aplicación (un suponer), pues también necesitas que te
permita ejecutar bcp.

- Usar bcp no implica necesariamente el uso de xp_cmdshell. Puedes
ejecutar bcp dentro de un job y ejecutarlo posteriormente mediante
sp_start_job

- bcp se encuentra en el PATH del sistema cuando se instala SQL Server,
así que no hay que especificar su ubicación

En cualquier modo, si yo estuviera en tu caso (desarrollando una nueva
aplicación), lo que haría sería un procedimiento CLR que se encargara de
escribir a disco el resultado de esa variable. Mucho más eficiente y
menos problemático que usar automatización OLE


"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático


"José Antonio Muñoz" wrote in message
news:
Teniendo en cuenta que estoy desarrollando un script para poder
ejecutarlo en diferentes máquinas con Sql Server y siendo la utilidad
BCP un ejecutable externo. Que ocurriría si:

- No se puede ejecutar bcp.exe en algún Sistema Operativo como Windows
2003 Server que tiene restringido el uso y ejecución de ciertos
programas.
- Por algún motivo no se puede utilizar xp_cmdshell (en el sistema
operativo X no tiene permisos para ejecutar programas o comando de
ms-dos)
- bcp.exe se encuentra en alguna carpeta de sql server, al ejecutar bcp
con el comando xp_cmdshell ¿es necesario especificar la ruta donde se
encuentra la utilidad?

No se me ocurre otros inconvenientes, pero ejecutar un programa desde un
script de sql server ... no sé si sería buena idea. Ahora bien si tú me
dices que ejecutar bcp es algo rutinario desde un script de sql server e
independiente del sistema operativo y de la configuración de éste, lo
mismo me planteo utilizarlo.

saludos,
José Antonio Muñoz.

"Carlos Sacristan" escribió en el mensaje de
noticias news:
¿Por qué no quieres usar bcp? Creo que sería lo más sencillo...

"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático


"José Antonio Muñoz" wrote in message
news:
Hola a todos,

¿como puedo guardar el contenido de una variable de Sql Server en un
archivo txt de una forma sencilla y sin utilizar el comando bcp?

saludos,
José Antonio Muñoz













Respuesta Responder a este mensaje
#8 Carlos Sacristan
11/11/2009 - 13:41 | Informe spam
bcp no necesita que le especifiques ninguna credencial (ni usuario ni
contraseñas) si utilizas la opción -T (autenticación integrada)

"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático


"José Antonio Muñoz" wrote in message
news:%
Carlos, ¿me podrías indicar, a groso modo, como se realizaría ese
procedimiento? ¿como confeccionar el job? ¿como especificar las
credenciales a la utilidad bcp sin escribir contraseñas expuestas? etc..

José Antonio Muñoz

"Carlos Sacristan" escribió en el mensaje de noticias
news:
Pues, yendo punto por punto:

-Efectivamente, como tú dices pueden darse muchas circunstancias. Puede
que el administrador de sistemas tenga establecidas ciertas limitaciones
en la ejecución de programas, pero si tu aplicación lo necesita hay que
tratarlo como un requisito más. Es decir, igual que necesitas SQL Server
o .NET para tu aplicación (un suponer), pues también necesitas que te
permita ejecutar bcp.

- Usar bcp no implica necesariamente el uso de xp_cmdshell. Puedes
ejecutar bcp dentro de un job y ejecutarlo posteriormente mediante
sp_start_job

- bcp se encuentra en el PATH del sistema cuando se instala SQL Server,
así que no hay que especificar su ubicación

En cualquier modo, si yo estuviera en tu caso (desarrollando una nueva
aplicación), lo que haría sería un procedimiento CLR que se encargara de
escribir a disco el resultado de esa variable. Mucho más eficiente y
menos problemático que usar automatización OLE


"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático


"José Antonio Muñoz" wrote in message
news:
Teniendo en cuenta que estoy desarrollando un script para poder
ejecutarlo en diferentes máquinas con Sql Server y siendo la utilidad
BCP un ejecutable externo. Que ocurriría si:

- No se puede ejecutar bcp.exe en algún Sistema Operativo como Windows
2003 Server que tiene restringido el uso y ejecución de ciertos
programas.
- Por algún motivo no se puede utilizar xp_cmdshell (en el sistema
operativo X no tiene permisos para ejecutar programas o comando de
ms-dos)
- bcp.exe se encuentra en alguna carpeta de sql server, al ejecutar bcp
con el comando xp_cmdshell ¿es necesario especificar la ruta donde se
encuentra la utilidad?

No se me ocurre otros inconvenientes, pero ejecutar un programa desde un
script de sql server ... no sé si sería buena idea. Ahora bien si tú me
dices que ejecutar bcp es algo rutinario desde un script de sql server e
independiente del sistema operativo y de la configuración de éste, lo
mismo me planteo utilizarlo.

saludos,
José Antonio Muñoz.

"Carlos Sacristan" escribió en el mensaje de
noticias news:
¿Por qué no quieres usar bcp? Creo que sería lo más sencillo...

"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático


"José Antonio Muñoz" wrote in message
news:
Hola a todos,

¿como puedo guardar el contenido de una variable de Sql Server en un
archivo txt de una forma sencilla y sin utilizar el comando bcp?

saludos,
José Antonio Muñoz













Respuesta Responder a este mensaje
#9 José Antonio Muñoz
11/11/2009 - 18:36 | Informe spam
¿Procedimiento CLR?

"Carlos Sacristan" escribió en el mensaje de noticias
news:
No es que no funcione, es que no existe SQL Agent en la versión Express.

La opción de usar bcp dentro de un job digamos que es una vía para salir
del paso. Pienso que lo mejor sería usar un procedimiento CLR

"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático


"José Antonio Muñoz" wrote in message
news:%
Una cosita, se me olvidaba decirte que utilizo Sql Server 2008 Express y
tengo entendido que en esta versión no funciona el Agente de sql

José Antonio Muñoz.

"Carlos Sacristan" escribió en el mensaje de noticias
news:
Pues, yendo punto por punto:

-Efectivamente, como tú dices pueden darse muchas circunstancias. Puede
que el administrador de sistemas tenga establecidas ciertas limitaciones
en la ejecución de programas, pero si tu aplicación lo necesita hay que
tratarlo como un requisito más. Es decir, igual que necesitas SQL Server
o .NET para tu aplicación (un suponer), pues también necesitas que te
permita ejecutar bcp.

- Usar bcp no implica necesariamente el uso de xp_cmdshell. Puedes
ejecutar bcp dentro de un job y ejecutarlo posteriormente mediante
sp_start_job

- bcp se encuentra en el PATH del sistema cuando se instala SQL Server,
así que no hay que especificar su ubicación

En cualquier modo, si yo estuviera en tu caso (desarrollando una nueva
aplicación), lo que haría sería un procedimiento CLR que se encargara de
escribir a disco el resultado de esa variable. Mucho más eficiente y
menos problemático que usar automatización OLE


"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático


"José Antonio Muñoz" wrote in message
news:
Teniendo en cuenta que estoy desarrollando un script para poder
ejecutarlo en diferentes máquinas con Sql Server y siendo la utilidad
BCP un ejecutable externo. Que ocurriría si:

- No se puede ejecutar bcp.exe en algún Sistema Operativo como Windows
2003 Server que tiene restringido el uso y ejecución de ciertos
programas.
- Por algún motivo no se puede utilizar xp_cmdshell (en el sistema
operativo X no tiene permisos para ejecutar programas o comando de
ms-dos)
- bcp.exe se encuentra en alguna carpeta de sql server, al ejecutar bcp
con el comando xp_cmdshell ¿es necesario especificar la ruta donde se
encuentra la utilidad?

No se me ocurre otros inconvenientes, pero ejecutar un programa desde
un script de sql server ... no sé si sería buena idea. Ahora bien si tú
me dices que ejecutar bcp es algo rutinario desde un script de sql
server e independiente del sistema operativo y de la configuración de
éste, lo mismo me planteo utilizarlo.

saludos,
José Antonio Muñoz.

"Carlos Sacristan" escribió en el mensaje de
noticias news:
¿Por qué no quieres usar bcp? Creo que sería lo más sencillo...

"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático


"José Antonio Muñoz" wrote in message
news:
Hola a todos,

¿como puedo guardar el contenido de una variable de Sql Server en un
archivo txt de una forma sencilla y sin utilizar el comando bcp?

saludos,
José Antonio Muñoz
















Respuesta Responder a este mensaje
#10 Carlos Sacristan
11/11/2009 - 18:43 | Informe spam
sí, un procedimiento hecho en .NET (VB o C#)

"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático


"José Antonio Muñoz" wrote in message
news:%
¿Procedimiento CLR?

"Carlos Sacristan" escribió en el mensaje de noticias
news:
No es que no funcione, es que no existe SQL Agent en la versión Express.

La opción de usar bcp dentro de un job digamos que es una vía para salir
del paso. Pienso que lo mejor sería usar un procedimiento CLR

"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático


"José Antonio Muñoz" wrote in message
news:%
Una cosita, se me olvidaba decirte que utilizo Sql Server 2008 Express y
tengo entendido que en esta versión no funciona el Agente de sql

José Antonio Muñoz.

"Carlos Sacristan" escribió en el mensaje de
noticias news:
Pues, yendo punto por punto:

-Efectivamente, como tú dices pueden darse muchas circunstancias. Puede
que el administrador de sistemas tenga establecidas ciertas
limitaciones en la ejecución de programas, pero si tu aplicación lo
necesita hay que tratarlo como un requisito más. Es decir, igual que
necesitas SQL Server o .NET para tu aplicación (un suponer), pues
también necesitas que te permita ejecutar bcp.

- Usar bcp no implica necesariamente el uso de xp_cmdshell. Puedes
ejecutar bcp dentro de un job y ejecutarlo posteriormente mediante
sp_start_job

- bcp se encuentra en el PATH del sistema cuando se instala SQL Server,
así que no hay que especificar su ubicación

En cualquier modo, si yo estuviera en tu caso (desarrollando una nueva
aplicación), lo que haría sería un procedimiento CLR que se encargara
de escribir a disco el resultado de esa variable. Mucho más eficiente y
menos problemático que usar automatización OLE


"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático


"José Antonio Muñoz" wrote in message
news:
Teniendo en cuenta que estoy desarrollando un script para poder
ejecutarlo en diferentes máquinas con Sql Server y siendo la utilidad
BCP un ejecutable externo. Que ocurriría si:

- No se puede ejecutar bcp.exe en algún Sistema Operativo como Windows
2003 Server que tiene restringido el uso y ejecución de ciertos
programas.
- Por algún motivo no se puede utilizar xp_cmdshell (en el sistema
operativo X no tiene permisos para ejecutar programas o comando de
ms-dos)
- bcp.exe se encuentra en alguna carpeta de sql server, al ejecutar
bcp con el comando xp_cmdshell ¿es necesario especificar la ruta donde
se encuentra la utilidad?

No se me ocurre otros inconvenientes, pero ejecutar un programa desde
un script de sql server ... no sé si sería buena idea. Ahora bien si
tú me dices que ejecutar bcp es algo rutinario desde un script de sql
server e independiente del sistema operativo y de la configuración de
éste, lo mismo me planteo utilizarlo.

saludos,
José Antonio Muñoz.

"Carlos Sacristan" escribió en el mensaje de
noticias news:
¿Por qué no quieres usar bcp? Creo que sería lo más sencillo...

"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático


"José Antonio Muñoz" wrote in message
news:
Hola a todos,

¿como puedo guardar el contenido de una variable de Sql Server en un
archivo txt de una forma sencilla y sin utilizar el comando bcp?

saludos,
José Antonio Muñoz



















Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida