gpt4 book ai didi

c# - 从 C# 批量数据库插入的最佳方法是什么?

转载 作者:IT王子 更新时间:2023-10-29 04:12:08 24 4
gpt4 key购买 nike

我如何/执行批量数据库插入的最佳方法是什么?

在 C# 中,我遍历集合并为集合中的每个项目调用插入存储过程。

如何在一次数据库调用中发送所有数据?

例如假设我有一个包含 10 个项目的人员列表 ( List<Person>)。我目前正在调用 InsertPerson 存储过程 10 次。我想将其减少到 1 个电话。

我正在使用 MS SQL Server 2005。

最佳答案

CsharperGuyInLondon,这是一个简单的 SqlBulkCopy 代码示例:

using System.Data.SqlClient;

DataTable table = new DataTable("States");
// construct DataTable
table.Columns.Add(new DataColumn("id_state", typeof(int)));
table.Columns.Add(new DataColumn("state_name", typeof(string)));

// note: if "id_state" is defined as an identity column in your DB,
// row values for that column will be ignored during the bulk copy
table.Rows.Add("1", "Atlanta");
table.Rows.Add("2", "Chicago");
table.Rows.Add("3", "Springfield");

using(SqlBulkCopy bulkCopy = new SqlBulkCopy(connectionString))
{
bulkCopy.BulkCopyTimeout = 600; // in seconds
bulkCopy.DestinationTableName = "state";
bulkCopy.WriteToServer(table);
}

关于c# - 从 C# 批量数据库插入的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/682015/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com