Cargar un archivo csv en un servidor sql - Problema de identidad

.net c# csv sqlbulkcopy sql-server

Pregunta

Dada una estructura de columna en un archivo CSV de:

First_Name, Last_Name, Date_Of_Birth

Y una tabla de SQL Server con una estructura de

ID(PK) | First_Name | Last_Name | Date_Of_Birth

(La ID del campo es una Identidad con un incremento automático de 1)

¿Cómo lo organizo para que SQL Server no intente insertar la columna First_Name del archivo csv en el campo de ID?

Para información, el csv se carga en un DataTable y luego se copia en SQL Server usando SqlBulkCopy

¿Debería modificar el archivo csv antes de la importación? Agregar la columna de ID (La tabla de destino se trunca antes de la importación, por lo que no hay que preocuparse por los valores de clave duplicados). ¿O tal vez agregar una columna de ID a la Datatable?

O ¿Hay alguna configuración en el servidor Sql que pueda haber omitido?

Respuesta aceptada

Debe agregar la columna de ID a la tabla de datos, pero no se preocupe por rellenar ese campo con datos del CSV.

Una vez hecho esto, los datos deben estar bien alineados y, dado que ID es una Identidad con Auto-Incremento, debería estar bien con la carga del CSV en la base de datos.




Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué