Trabajo con bulk insert

23/03/2006 - 17:40 por Peter | Informe spam
Hola!!, estoy montando información de archivos de texto con un Bulk Insert,
pero sucede que al armar el archivo que tengo que montar no respeta el
armado, ya lo probe con un print y si funciona la concatenación pero usando
el bulk no lo hace, alguien tiene alguna idea de como puedo hacerlo, aqui les
pongo esa parte del codigo.



BULK INSERT users..CPU FROM 'F:\ArchivosdeTexto\cliente\Consola\salidau_0' +
CONVERT (CHAR(1),DATEPART(MONTH, GETDATE())) + CONVERT (CHAR(2),DATEPART(DAY,
GETDATE())) + '.txt'
WITH (
DATAFILETYPE = 'char',
FIELDTERMINATOR = ',',
ROWTERMINATOR = ''
)
Gracias y saludos!!

Preguntas similare

Leer las respuestas

#1 Maxi
23/03/2006 - 17:53 | Informe spam
Hola que quiere decir que no respesta el armado?


Salu2
Maxi [MVP SQL SERVER]
www.sqlgurus.org


"Peter" escribió en el mensaje
news:
Hola!!, estoy montando información de archivos de texto con un Bulk
Insert,
pero sucede que al armar el archivo que tengo que montar no respeta el
armado, ya lo probe con un print y si funciona la concatenación pero
usando
el bulk no lo hace, alguien tiene alguna idea de como puedo hacerlo, aqui
les
pongo esa parte del codigo.



BULK INSERT users..CPU FROM 'F:\ArchivosdeTexto\cliente\Consola\salidau_0'
+
CONVERT (CHAR(1),DATEPART(MONTH, GETDATE())) + CONVERT
(CHAR(2),DATEPART(DAY,
GETDATE())) + '.txt'
WITH (
DATAFILETYPE = 'char',
FIELDTERMINATOR = ',',
ROWTERMINATOR = ''
)
Gracias y saludos!!
Respuesta Responder a este mensaje
#2 Peter
23/03/2006 - 18:09 | Informe spam
AHHH!! Se refiere a que estoy concatenando una cadena (que es la que genera
el archivo que se monta)

"Maxi" escribió:

Hola que quiere decir que no respesta el armado?


Salu2
Maxi [MVP SQL SERVER]
www.sqlgurus.org


"Peter" escribió en el mensaje
news:
> Hola!!, estoy montando información de archivos de texto con un Bulk
> Insert,
> pero sucede que al armar el archivo que tengo que montar no respeta el
> armado, ya lo probe con un print y si funciona la concatenación pero
> usando
> el bulk no lo hace, alguien tiene alguna idea de como puedo hacerlo, aqui
> les
> pongo esa parte del codigo.
>
>
>
> BULK INSERT users..CPU FROM 'F:\ArchivosdeTexto\cliente\Consola\salidau_0'
> +
> CONVERT (CHAR(1),DATEPART(MONTH, GETDATE())) + CONVERT
> (CHAR(2),DATEPART(DAY,
> GETDATE())) + '.txt'
> WITH (
> DATAFILETYPE = 'char',
> FIELDTERMINATOR = ',',
> ROWTERMINATOR = ''
> )
> Gracias y saludos!!



Respuesta Responder a este mensaje
#3 Maxi
23/03/2006 - 18:33 | Informe spam
Sigo sin entender, podrias poner como deberia estar a tu criterio y como es
generado?


Salu2
Maxi [MVP SQL SERVER]
www.sqlgurus.org


"Peter" escribió en el mensaje
news:
AHHH!! Se refiere a que estoy concatenando una cadena (que es la que
genera
el archivo que se monta)

"Maxi" escribió:

Hola que quiere decir que no respesta el armado?


Salu2
Maxi [MVP SQL SERVER]
www.sqlgurus.org


"Peter" escribió en el mensaje
news:
> Hola!!, estoy montando información de archivos de texto con un Bulk
> Insert,
> pero sucede que al armar el archivo que tengo que montar no respeta el
> armado, ya lo probe con un print y si funciona la concatenación pero
> usando
> el bulk no lo hace, alguien tiene alguna idea de como puedo hacerlo,
> aqui
> les
> pongo esa parte del codigo.
>
>
>
> BULK INSERT users..CPU FROM
> 'F:\ArchivosdeTexto\cliente\Consola\salidau_0'
> +
> CONVERT (CHAR(1),DATEPART(MONTH, GETDATE())) + CONVERT
> (CHAR(2),DATEPART(DAY,
> GETDATE())) + '.txt'
> WITH (
> DATAFILETYPE = 'char',
> FIELDTERMINATOR = ',',
> ROWTERMINATOR = ''
> )
> Gracias y saludos!!



Respuesta Responder a este mensaje
#4 Alejandro Mesa
23/03/2006 - 18:59 | Informe spam
Peter,

Trata usando sql dinamico.

declare @sql nvarchar(4000)

set @sql = N'
BULK INSERT users..CPU FROM ''F:\ArchivosdeTexto\cliente\Consola\salidau_0''
+
CONVERT (CHAR(1),DATEPART(MONTH, GETDATE())) + CONVERT
(CHAR(2),DATEPART(DAY, GETDATE())) + ''.txt''
WITH (
DATAFILETYPE = ''char'',
FIELDTERMINATOR = '','',
ROWTERMINATOR = ''''
)'

exec sp_executesql @sql
go

Las virtudes y maldades del SQL dinámico
http://www.hayes.ch/sql/sql_dinamico.html


AMB


"Peter" wrote:

Hola!!, estoy montando información de archivos de texto con un Bulk Insert,
pero sucede que al armar el archivo que tengo que montar no respeta el
armado, ya lo probe con un print y si funciona la concatenación pero usando
el bulk no lo hace, alguien tiene alguna idea de como puedo hacerlo, aqui les
pongo esa parte del codigo.



BULK INSERT users..CPU FROM 'F:\ArchivosdeTexto\cliente\Consola\salidau_0' +
CONVERT (CHAR(1),DATEPART(MONTH, GETDATE())) + CONVERT (CHAR(2),DATEPART(DAY,
GETDATE())) + '.txt'
WITH (
DATAFILETYPE = 'char',
FIELDTERMINATOR = ',',
ROWTERMINATOR = ''
)
Gracias y saludos!!
Respuesta Responder a este mensaje
#5 Peter
23/03/2006 - 19:00 | Informe spam
Ok, mira el archivo que debo generar es:

'F:\ArchivosdeTexto\cliente\Consola\salidau_0' + CONVERT
(CHAR(1),DATEPART(MONTH, GETDATE())) + CONVERT
(CHAR(2),DATEPART(DAY,GETDATE())) + '.txt'

pero cuando trato de usarlo con el bulk insert,
BULK INSERT users..CPU FROM 'F:\ArchivosdeTexto ...

aparece un mensaje diciendo:

Server: Msg 170, Level 15, State 1, Line 22
Line 22: Incorrect syntax near '+'.

en el que hace referencia a la concatenación según entiendo.
Cómo puedo hacer que tome el archivo como lo estoy poniendo???

Gracias y saludos!!



"Maxi" wrote:

Sigo sin entender, podrias poner como deberia estar a tu criterio y como es
generado?


Salu2
Maxi [MVP SQL SERVER]
www.sqlgurus.org


"Peter" escribió en el mensaje
news:
> AHHH!! Se refiere a que estoy concatenando una cadena (que es la que
> genera
> el archivo que se monta)
>
> "Maxi" escribió:
>
>> Hola que quiere decir que no respesta el armado?
>>
>>
>> Salu2
>> Maxi [MVP SQL SERVER]
>> www.sqlgurus.org
>>
>>
>> "Peter" escribió en el mensaje
>> news:
>> > Hola!!, estoy montando información de archivos de texto con un Bulk
>> > Insert,
>> > pero sucede que al armar el archivo que tengo que montar no respeta el
>> > armado, ya lo probe con un print y si funciona la concatenación pero
>> > usando
>> > el bulk no lo hace, alguien tiene alguna idea de como puedo hacerlo,
>> > aqui
>> > les
>> > pongo esa parte del codigo.
>> >
>> >
>> >
>> > BULK INSERT users..CPU FROM
>> > 'F:\ArchivosdeTexto\cliente\Consola\salidau_0'
>> > +
>> > CONVERT (CHAR(1),DATEPART(MONTH, GETDATE())) + CONVERT
>> > (CHAR(2),DATEPART(DAY,
>> > GETDATE())) + '.txt'
>> > WITH (
>> > DATAFILETYPE = 'char',
>> > FIELDTERMINATOR = ',',
>> > ROWTERMINATOR = ''
>> > )
>> > Gracias y saludos!!
>>
>>
>>



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