sql – 使用ORM进行大容量数据库更新
发布时间:2020-05-28 16:05:23 所属栏目:MsSql 来源:互联网
导读:我喜欢ORM工具,但我经常认为对于大型更新(数千行),加载,更新和保存时似乎效率低下 UPDATE [table] set [column] = [value] WHERE [predicate] 会提供更好的表现. 但是,假设出于性能原因想要沿着这条路走下去,那么你将如何确保内存中缓存的任何对象都得到正确
|
我喜欢ORM工具,但我经常认为对于大型更新(数千行),加载,更新和保存时似乎效率低下 UPDATE [table] set [column] = [value] WHERE [predicate] 会提供更好的表现. 但是,假设出于性能原因想要沿着这条路走下去,那么你将如何确保内存中缓存的任何对象都得到正确更新. 假设您正在使用LINQ to SQL,并且您一直在使用DataContext,那么如何确保您的高性能UPDATE反映在DataContext的对象图中? 这可能是“你没有”或“在DB上使用触发器来调用丢弃缓存的.NET代码”等等,但我很想听到这类问题的常见解决方案. 解决方法你是对的,在这种情况下,使用ORM加载,更改然后保留记录效率不高.我的过程就是这样的1)早期实现使用ORM,在我的例子中是NHibernate,专门 2)随着开发的成熟,确定性能问题,其中包括大量更新 3)将那些重构为sql或SP方法 4)使用Refresh(object)命令更新缓存对象, 我的一个大问题是通知其他客户更新已经发生.在大多数情况下,我们已经接受了一些客户端将是陈旧的,无论如何都是标准ORM使用的情况,然后检查更新/插入时的时间戳. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- SQL:Last_Value()返回错误的结果(但First_Value()工作正常
- sql-server – 尝试重命名SSMS中的DB /表时,Delete键是否正
- 数据库无法将django app部署到amazon beanstalk
- 否定选择SQL查询
- sql-server – 为PHP安装PDO_DBLIB
- 如果’orderby’值相同,为什么Oracle会返回特定的序列?
- sql-server – INSERT权限被拒绝对象’employee_info’,数据
- 开发人员的最佳数据库书籍
- sql – 将列添加到临时表 – ‘无效的列名称DECIMAL’
- SQL Server:pivot功能,需要透视表
