Importar datos a tabla de usuario por Bulk Insert

Buenas tardes,

He estado tratando de subir un archivo con mas de 2 millones de registros a una tabla de usuario para validar los usuarios y saber si hacen parte de un convenio o no.

La estructura de la tabla es la siguiente:
image

Los datos que me enviaron en un archivo de texto para subir son los siguientes:
image
En la tabla hay dos campos adicionales (Code, Name) que son los que crea SAP automáticamente cuando creamos una tabla de usuario, los cuales me sacan error al intentar subir el archivo con los datos por medio de un Bulk Insert. El código que estoy usando para la subida es el siguiente:

BULK INSERT [dbo].[@PET_USUARIO_MASIVO] FROM 'C:\USUARIOS MASIVO\POBLACION PRUEBA AGOSTO.txt'
WITH
(
DATAFILETYPE    = 'char',
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
);
GO

El error que obtengo es el siguiente:

Mens. 4864, Nivel 16, Estado 1, Línea 1
Error de conversión de datos de carga masiva (tipo no coincidente o carácter no válido para la página de códigos especificada) en la fila 1, columna 3 (U_TIPO_DOC).
Mens. 4864, Nivel 16, Estado 1, Línea 1
Error de conversión de datos de carga masiva (tipo no coincidente o carácter no válido para la página de códigos especificada) en la fila 2, columna 3 (U_TIPO_DOC).
Mens. 4864, Nivel 16, Estado 1, Línea 1
Error de conversión de datos de carga masiva (tipo no coincidente o carácter no válido para la página de códigos especificada) en la fila 3, columna 3 (U_TIPO_DOC).
Mens. 4864, Nivel 16, Estado 1, Línea 1
Error de conversión de datos de carga masiva (tipo no coincidente o carácter no válido para la página de códigos especificada) en la fila 4, columna 3 (U_TIPO_DOC).
Mens. 4864, Nivel 16, Estado 1, Línea 1
Error de conversión de datos de carga masiva (tipo no coincidente o carácter no válido para la página de códigos especificada) en la fila 5, columna 3 (U_TIPO_DOC).
Mens. 4864, Nivel 16, Estado 1, Línea 1
Error de conversión de datos de carga masiva (tipo no coincidente o carácter no válido para la página de códigos especificada) en la fila 6, columna 3 (U_TIPO_DOC).
Mens. 4864, Nivel 16, Estado 1, Línea 1

Creo es por que los dos campos iniciales (Code, Name) esperan datos ya que el archivo txt no los contiene.
Como hago para generarle datos con números consecutivos a esos dos campos desde la subida de la información con Bulk Insert?
Mejor dicho, que quede en la tabla algo así:
image
No los pongo manual ni los genero en excel por que es muy limitado, ya que son 2.380.000 registros.

Agradezco su ayuda.

Hola

los campos code y name son obligatorios y no pueden repetirse los valores.

Para realizar lo que planteas, necesitas que las columnas correspondientes a name y code tengan valores. Plánteate hacerlo de 50.000 en 50.000 registros para generar los valores correctos y poder copiar y pegar desde Excel.

Recuerda que ambos son nvarchar de longitud 50.

Un saludo
Agustín

El error es muy claro, al parecer el tipo definido para el campo TIPO_DOC esta mal. Empieza por ahí para validar porque te marca el error. En cuanto al Code y Name no veo problema de lo que estas metiendo solo toma en cuenta que es un consecutivo y que no puede repetirse ya que son los campos llave de toda tabla de usuario.

Otra opción que tienes es subirlo por DTW.

buen día,

Ya he hecho el trabajo de generar los consecutivos en Excel pero es tedioso por el tema de tener que hacer varios archivos para poderlos subir.
Buscaba la forma de poder generarlos en SQL de una manera mas automática.

Hola,
Ya hice la prueba por DTW y es bastante demorado el proceso por la cantidad de registros que tiene la BD y he experimentado bloqueos en el uso de SAP por esta subida.

Estoy buscando la forma de generar automáticamente el consecutivo en SQl y asegurarme que no se repitan.

Pues yo creo tu BULK esta bien, solo valida el campo que te marca error.

Este tema se cerró automáticamente después de 14 días. No se permiten nuevas respuestas.