Como realizar un BCP en Sql Server

Necesito realizar un comando BPC para exportar datos planos a txt realizando un BCP con queryout en Sql Server, y quisiera saber como puedo realizarlo pudiento tener un separador de campo nulo, osea que no exista separador de campo, ya que necesito que cada dato este uno seguido del otro.
SELECT    @vsComando = 'BCP "SELECT  ' +        
        'Campo01, Campo02, Campo03, Campo04, Campo05 '  +        
        'FROM ' + @vsNombredelabase + '.[dbo].[TablaA] " queryout ' +        
        @vsNombreServidor + '\' + @vsNombreDelArchivo + ' -c -S' + @@SERVERNAME +' -T -r\n -t (*)'
EXEC Master.dbo.xp_cmdshell @vsComando
(*) Aqui seria donde pongo el separador de campo, pero no me admite null, tampoco el terminador invisible \0 ya que termina siendo 1 espacio en blanco.
El resultado que quiero obtener seria más o menos así:
Campo01Campo02Campo03Campo04Campo05
Campo01Campo02Campo03Campo04Campo05
Campo01Campo02Campo03Campo04Campo05

1 respuesta

Respuesta
1
No se el tipo de tus campos pero si son char o varchar puedes cambiar tu sentencia para que concatene los campos más o menos así:
SELECT    @vsComando = 'BCP "SELECT  ' +        
        'Campo01 + Campo02 + Campo03 + Campo04 +Campo05 '  +        
        'FROM ' + @vsNombredelabase + '.[dbo].[TablaA] " queryout ' +        
        @vsNombreServidor + '\' + @vsNombreDelArchivo + ' -c -S' + @@SERVERNAME +' -T -r\n -t (*)'
EXEC Master.dbo.xp_cmdshell @vsComando
En caso de que tus campos sean de otro tipo osa el cast o el convert para hacerlos texto y poderlos concatenar.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas