sql en ms-dos

rafa
10 de Marzo del 2006
hola!! esta duda es muy sencilla...
Estoy haciendo un .bat q me elimina algunos ficheros y quiero que tambien me borrre el contenido de una tabla en sql server...
¿como se hace para ejecutar secuencias de sql server desde un .bat? solo es un triste delete from...
gracias a todos!!

monky
10 de Marzo del 2006
1.- Debes de usa el utilitario OSQL ; en donde en el .,bat lo llamas y le indicas que usaras como entrada un archivo con extension .sql de la siguiente manera :
osql -Utuusuariosql -Ptupassword -ientrada.sql -osalida.txt
2.- Con el notepad creas el archivo entrada.sql con las sentencias sql... asi
USE TUBASE
go
delete from TUTABLA where .......
go
Salvas este archivo a disco y listo....

El resultado de la ejecucion sql te quedara en el archivo salida.sql

monky
10 de Marzo del 2006
Mejor usa el truncate en vez del delete para borrar todas las filas de tu tabla..... esa operacion no logea en el archivo de transacciones
En el osql que te indique me falto el parametro -STuserversql.

osql -Utuusuariosql -Ptupassword -STuserversql -ientrada.sql -osalida.txt



el truncate se usa asi
use TUBASE
go
truncate table TUTABLA
go