2011-03-29 147 views
6

Estoy intentando hacer una carga masiva en una tabla en nuestra base de datos sql. Esta consulta funcionaba bien antes, cuando teníamos la base de datos en un servidor diferente, pero ahora en el servidor nuevo recibo un error. Aquí es todo lo que tengo: sql importación masiva consulta:Carga masiva: "final inesperado de archivo" en el nuevo servidor

BULK 
INSERT NewProducts 
FROM 'c:\newproducts.csv' 
WITH 
(
FIELDTERMINATOR = ',', 
ROWTERMINATOR = '\n' 
) 
GO 

Y los errores que estoy recibiendo son:

Msg 4832, Level 16, State 1, Line 1 
Bulk load: An unexpected end of file was encountered in the data file. 
Msg 7399, Level 16, State 1, Line 1 
The OLE DB provider "BULK" for linked server "(null)" reported an error. The provider did not give any information about the error. 
Msg 7330, Level 16, State 2, Line 1 
Cannot fetch a row from OLE DB provider "BULK" for linked server "(null)". 

Gracias por cualquier ayuda de antemano.

+0

¿Cuáles son las versiones/software en el servidor antiguo y el nuevo? – roberttdev

+0

same, sql server 2008 – Laziale

Respuesta

0

que he encontrado esto antes y hay algunas cosas que debe buscar:

  1. asegurarse de que su archivo CSV no tiene ninguna fila en blanco en la parte superior.
  2. Asegúrese de que no haya filas vacías adicionales al final del archivo.
  3. Asegúrese de que el ROWTERMINATOR es en realidad \n y no \r\n

Si lo hace todos los tres de estos y todavía está recibiendo el error de dejar que me haga saber.

+0

Brian, gracias por la ayuda, pero revisé todo eso, hice una prueba solo con dos filas y sigo teniendo los mismos errores – Laziale

+0

¿Revisó el bloc de notas? Descubrí que Excel no es muy útil cuando se trata de rastrear espacios en blanco extraños. –

+0

sí, en el bloc de notas es el mismo. sin espacio en blanco adicional, todo se ve igual, no sé por qué estoy recibiendo ese error – Laziale

0

En mi caso, el archivo que estaba tratando de acceder estaba en un directorio al que el proceso SQL Sever no tuvo acceso. Moví mis archivos planos a un directorio al que SQL tuvo acceso y se resolvió este error.

0

Para cualquier otra persona que encuentre esta pregunta en busca de una respuesta, este error también ocurre cuando el número de columnas en su archivo CSV no coincide con las columnas de la tabla en la que está haciendo la inserción masiva.

Cuestiones relacionadas