当前位置:网站首页 > 技术博客 > 正文

数据库数据版本控制



1、根据实体对象更新

根据实体更新需要给实体配置主键,参考文档实体配置

更新数据 - 图1

获取数据库时间,因没办法使用SqlFunc函数只能这么写

更新数据 - 图2

不更新 Name 和TestId

更新数据 - 图3

只更新 Name 和 CreateTime

更新数据 - 图4

只更新不为null的字段

更新数据 - 图5

特殊情况没有主键

用法同上唯一区别就是用WhereColumns指定条件

更新数据 - 图6

2、 根据表达式更新

根据表达式更新和上面的实体更新有着本质的区别,实体更新是要处理实体里面哪些字段要更新哪些不要更新

表达式则是需要更新什么写什,哪种方式都可以就看你喜欢哪一种

优点:

1、需要更新什么写什么

2、支持SqlFunc函数也支持字段相加比如 Num=it.Num+1

缺点:

1、批量操作支持有限

2、没有实体更新节约代码

更新数据 - 图7

下面是简写实现功能一样

更新数据 - 图8

在原有字段实现+1更新

更新数据 - 图9

Set语法是支持多个的

更新数据 - 图10

3、根据字典更新

更新数据 - 图11

4、DataTable更新

更新数据 - 图12

5、异步

.ExecuteCommand换成.ExecuteCommandAsync

1、时间戳更新方式

数据库必须自已能处理时间戳的变更,如果不能使用Datetime方式

SqlServer的时间戳类型是支持数据变更后自动变更的,其它数据库暂时不清楚

更新数据 - 图13

实体结构

更新数据 - 图14

2、DateTime方式

这种方式需要更新完后手动更新时间

更新数据 - 图15

实体结构

更新数据 - 图16

版权声明


相关文章:

  • http协议属于什么层2025-07-04 22:30:00
  • 装饰模式的实现方式2025-07-04 22:30:00
  • qt qfile read2025-07-04 22:30:00
  • mstp网络结构2025-07-04 22:30:00
  • 线程间 通信2025-07-04 22:30:00
  • 二叉树关键码怎么排的2025-07-04 22:30:00
  • linux iocp2025-07-04 22:30:00
  • cglib enhancer2025-07-04 22:30:00
  • C语言结构体数组2025-07-04 22:30:00
  • 红黑树与平衡二叉树和b树2025-07-04 22:30:00