SqlSugar 怎样批量插入
时间: 2024-11-23 15:07:33 浏览: 14
c#实现几种数据库的大数据批量插入
在 SqlSugar 中批量插入数据通常是通过 `InsertAll()` 或者 `UseTable Insert()` 方法来实现的。这里是一个基本的例子:
```csharp
// 假设有一个名为 User 的实体类,包含 Id 和 Name 等字段
List<User> users = new List<User>();
users.Add(new User { Id = 1, Name = "张三" });
users.Add(new User { Id = 2, Name = "李四" });
using (var db = new SqlSugarClient())
{
// 使用 InsertAll() 方法批量插入所有用户
var result = db.Use事务().InsertAll(users);
// 获取插入的总数并检查是否成功
int insertedCount = result.RowsAffected;
if (insertedCount > 0)
{
Console.WriteLine("批量插入了 " + insertedCount + " 条记录");
}
}
```
另外,如果你想要插入的数据来自数据库查询或者其他动态生成的数据源,可以使用 `UseTable Insert()` 方法配合动态SQL来完成:
```csharp
// 动态构建 SQL 语句,例如从其他表获取需要插入的数据
var dataToInsert = db.Queryable<User>("SELECT * FROM OtherTable WHERE SomeCondition");
db.Use事务().Insert(dataToInsert);
```
在执行批量插入前,确保你的数据集合已排序好(如果框架支持),以优化性能。
阅读全文