Opérations de copie en bloc dans SQL Server (ADO.NET)
Microsoft SQL Server inclut un utilitaire de ligne de commande largement utilisé nommé bcp pour rapidement copier en bloc de grands fichiers dans des tables ou des vues figurant dans des bases de données SQL Server. La classe SqlBulkCopy vous permet d'écrire des solutions de code managé qui offrent une fonctionnalité similaire. Il existe d'autres manières de charger des données dans une table SQL Server (par exemple, des instructions INSERT) mais SqlBulkCopy présente un avantage sensible sur le plan des performances.
La classe SqlBulkCopy permet d'écrire des données uniquement dans des tables SQL Server. Toutefois, la source de données n'est pas limitée à SQL Server ; n'importe quelle source de données peut être utilisée, pour autant que les données puissent être chargées dans une instance de DataTable ou lues avec une instance de IDataReader.
La classe SqlBulkCopy vous permet d'effectuer :
une opération unique de copie en bloc ;
plusieurs opérations de copie en bloc ;
une opération de copie en bloc à l'intérieur d'une transaction.
Remarque |
---|
Lorsque vous utilisez .NET Framework, version 1.1 ou antérieure (ne prenant pas en charge la classe SqlBulkCopy), vous pouvez exécuter l'instruction SQL Server Transact-SQL BULK INSERT à l'aide de l'objet SqlCommand. |
Dans cette section
Configuration de l'exemple de copie en bloc (ADO.NET)
Décrit les tables utilisées dans les exemples de copie en bloc et fournit des scripts SQL pour créer les tables dans la base de données AdventureWorks.Opérations de copie en bloc uniques (ADO.NET)
Décrit comment effectuer une copie en bloc unique de données dans une instance de SQL Server à l'aide de la classe SqlBulkCopy et comment effectuer l'opération de copie en bloc à l'aide d'instructions Transact-SQL et de la classe SqlCommand.Opérations de copie en bloc multiples (ADO.NET)
Décrit comment effectuer plusieurs opérations de copie en bloc de données dans une instance de SQL Server à l'aide de la classe SqlBulkCopy.Transaction et opérations de copie en bloc (ADO.NET)
Décrit comment effectuer une opération de copie en bloc à l'intérieur d'une transaction, y compris comment valider ou annuler la transaction.