comment fonctionne la copie en bloc SQL?

c# sqlbulkcopy

Question

Je veux utiliser SqlBulkCopy C # pour insérer des lignes dans Sql DataBase mais je ne comprends pas si je définis une table dans les colonnes Db avec X et si je veux insérer 2 DataTables - l'une d'entre elles contient uniquement des colonnes y / x et la seconde contient seulement z / x colonnes. Lorsque j'utilise SqlBulkCopy, vérifie-t-il automatiquement le nom de la colonne et insère-t-il une valeur uniquement s'il s'agit de la colonne appropriée et null si ce n'est pas le cas, ou insère-t-il toujours des valeurs dans les premières colonnes et les dernières colonnes seront vides?

J'ai essayé de le rechercher mais je ne l'ai pas trouvé? quelqu'un peut-il aider?

Réponse acceptée

Recherchez: SqlBulkCopyColumnMapping

Lorsque SqlBulkCopyColumnMapping est utilisé, seules les colonnes pour lesquelles des mappages sont créés seront copiées.

Si vous ne créez pas de mappage pour une colonne, celle-ci sera ignorée par le processus de copie.


Réponse populaire

Examinez la propriété SqlBulkCopy.ColumnMappings . Il vous permet de mapper les colonnes source et cible lorsque le nombre de colonnes ou les positions ne correspondent pas.



Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi