Ejecucion de archivo .sql

10/11/2005 - 16:52 por Eduardo Quiroz | Informe spam
Hola a todos.

Tengo un archivo de texto con extensión .sql o .txt que necesito ejecutar
diariamente. Lógicamente este archivo se genera todos los días con comandos
potencialmente distintos.
Lo que necesito es ejecutar ese archivo con sentencias sql y dejarlo
programado para ejecución automática. Lo intenté hacer con el servicio DTS o
de transformación de datos y con el sql agent. En ambos casos no me resultó,
puesto que cuando selecciono el archivo con las secuencias de sql me las
"copia" en la ventana donde se está creando la tarea y con ello queda
estático, es decir, si cambian los comandos en el archivo .sql no cambian en
la tarea. Necesito ejecutar esas consultas de ese archivo diariamente. En
mysql eso lo podía hacer con un comando de sistema, parecido a mysql tabla <
archivo.sql
y lo metía en un Cron. En Oracle lo podía hacer con la sentencia START
archivo.sql.
Sin embargo, no lo he logrado hacer en MS SQL SERVER. Tengo la versión
8.00xx del server.
De antemano, muchas gracias

Preguntas similare

Leer las respuestas

#1 Isaias
10/11/2005 - 16:58 | Informe spam
Utiliza OSQL.EXE

osql -E -i C:\Mi_carpeta\Mi_secuencia.sql -o C:\Mi_carpeta\Mis_resultados.rpt

Saludos
IIslas


"Eduardo Quiroz" escribió:

Mostrar la cita
#2 Gustavo Larriera [MVP]
10/11/2005 - 17:02 | Informe spam
Usa el comando de línea: OSQL.EXE -i script.sql

osql
[-?] |
[-L] |
[
{
{-U login_id [-P password]}
| -E
}
[-S server_name[\instance_name]] [-H wksta_name] [-d db_name]
[-l time_out] [-t time_out] [-h headers]
[-s col_separator] [-w column_width] [-a packet_size]
[-e] [-I] [-D data_source_name]
[-c cmd_end] [-q "query"] [-Q "query"]
[-n] [-m error_level] [-r {0 | 1}]
[-i input_file] [-o output_file] [-p]
[-b] [-u] [-R] [-O] [-X[1]]
]
Los detalles de cada argumento los puedes leer en los Books Online.

Gustavo Larriera
Uruguay LatAm
Blog: http://sqljunkies.com/weblog/gux/
MVP profile: http://aspnet2.com/mvp.ashx?GustavoLarriera
Este mensaje se proporciona "COMO ESTA" sin garantias y no otorga ningun
derecho / This posting is provided "AS IS" with no warranties, and confers
no rights.
"Eduardo Quiroz" <Eduardo wrote in message
news:
Mostrar la cita
#3 Carlos Sacristán
10/11/2005 - 17:03 | Informe spam
Con la utilidad de línea de comandos osql puedes ejecutar archivos. Echa
un vistazo a esta función en los BOL para más información (tema 'Herramienta
osql')


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

"Eduardo Quiroz" <Eduardo escribió en el
mensaje news:
Mostrar la cita
comandos
Mostrar la cita
o
Mostrar la cita
resultó,
Mostrar la cita
en
Mostrar la cita
<
Mostrar la cita
#4 Eduardo Quiroz
10/11/2005 - 17:06 | Informe spam
"Isaias" escribió:

Mostrar la cita
Muchas gracias por la presta respuesta. Es exactamente lo que necesitaba.
Aunque me queda una pura duda..En el archivo sql sólo tengo las consultas
(que son algo así como 32000 update xxxxxxx). Es necesario que realice alguna
"conexión" a la base de datos previo a la carga o de inmediato deduce a que
base de datos pertenece la tabla y la usa??...o es necesario un use xxxxxx
antes de empezar las querys???
Muchas gracias de nuevo!
Saludos!
Mostrar la cita
#5 Carlos Sacristán
10/11/2005 - 17:12 | Informe spam
Si echas un vistazo a los parámetros de la instrucción osql, verás que
hay uno [-d dbname] en el que le indicas la base de datos a la que quieres
conectarte.

Te recomiendo que eches un vistazo en los BOL a los detalles de esta
instrucción


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

"Eduardo Quiroz" escribió en el
mensaje news:
Mostrar la cita
C:\Mi_carpeta\Mis_resultados.rpt
Mostrar la cita
alguna
Mostrar la cita
que
Mostrar la cita
ejecutar
Mostrar la cita
comandos
Mostrar la cita
DTS o
Mostrar la cita
resultó,
Mostrar la cita
las
Mostrar la cita
cambian en
Mostrar la cita
En
Mostrar la cita
tabla <
Mostrar la cita
Ads by Google
Search Busqueda sugerida