Insertable批量插入时间类型的值被覆盖了 返回

SqlSugar 老数据
2 829

代码大概是这个样子的,其中的 CreateTime 是在外面提早创建了时间,但是在插入后,全部都变成了同一个时间

var log = new LogOrder()

{

    Id = SnowflakeHelper.NextId(),

    OrderId = order.Id,

    OrderStatus = order.OrderStatus,

    UserId = order.UserId,

    Title = order.GoodsName,

    Data = content,

    CreateTime = DateTime.Now,

};

msgs.Add(log);

if (msgs.Count >= batchSize)

{

    using var container = _ServiceProvider.CreateScope();

    await container.ServiceProvider.GetService<ILogOrderService>()

        .Insertable(msgs).UseParameter().ExecuteCommandAsync();

}


使用的 mysql 5.7 , sqlsugar nodrive 5.1.3.31 / sqlsugar ...51 相同情况

热忱回答2

  • fate sta fate sta VIP0
    2023/2/23
     //InsertServerTime=true 插入取数据库当前时间 支持多库 
      //IsOnlyIgnoreUpdate=true 是指在Update操作不更新该列 (可用可不用根据需求来)
      [SugarColumn(InsertServerTime =true, IsOnlyIgnoreUpdate =true)]// getdate() now() sysdate
      public DateTime CreateTime { getset; }
       


    0 回复
  • fate sta fate sta VIP0
    2023/2/23

    你可以用数据库时间


    0 回复