Pregunta: | 51225 - COMO GENERAR UN ARCHIVO PLANO EN SQL SERVER 2000 |
Autor: | Victor Arvelaiz |
Hola a todos...
Tengo una grand duda y es como generar un archivo plano desde SQL server 2000? He tenido la oportunidad de hacerlo en varias oportunidades pero en Informix bajo ambiente Unix. Hacerlo era bastante sencillo, por ejemplo tenia dos manera de hacerlo la primera era así: ------ UNLOAD TO "/home/arvelaiz/archivos_plano/archivo.txt" delimiter "|" Select tabla1.campo1, tabla2.campo2, tabla1.campo4,..., tablaN.campoM from tabla1, tabla2, ..., tablaN where .... --- con esta sentencia automaticamente obtenia el archivo. la otra opción era crear una Stored Procedure crear las variables y realizar todas las operaciones necesarias y finalmente realizaba una asignación ----------- LET linea = variable1||"|"||variable2||"|""||variable3|| ....||variableN; SYSTEM "echo "||linea||" > /home/arvelaiz/archivos_plano/archivo.txt"; --------- Pero en SQL Server 2000 desconosco como hacerlo si me pueden ayudar se los agradeceria muchisimo... |
Respuesta: | eider mauricio aristizabal erazo |
conozco el bulk copy BCP de sql server 2005 (Me imagino que en sqlserver 2000 tambien debe servir) que se ejecuta desde la linea de comandos y que por ende se puede colocar en un archivo de procesamiento por lotes .BAT. Esta utilidad es usada para importar y exportar datos a la base de datos de una instancia dada y contiene una gran variedad de argumentos que podras consultar en la linea de comandos al escribir bcp seguido de la tecla ENTER.
Ejemplo para guardar los datos de una tabla a un archivo: BCP "select campo1, campo2 from basededatos.tabla" queryout c:\datos.txt -T -c C:\>bcp "select * from basedatos.dbo .USUARIOS" queryout c:\usuarios.txt -T -c Starting copy... 396 rows copied. Network packet size (bytes): 4096 Clock Time (ms.) Total : 1 Average : (396000.00 rows per sec.) -T inidica que es autenticacion integrada Bye. |