加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – rowversion / timestamp会显着影响性能吗?

发布时间:2020-12-12 06:36:44 所属栏目:MsSql教程 来源:网络整理
导读:我打算在我的数据库rowversion中添加大多数表来跟踪这些表中的更改.我知道添加它会影响查询的性能. 有没有人知道它是否会影响性能(慢几个百分点)或者我不应该将rowversion添加到许多表中,因为它会使DB慢得多. 解决方法 仅添加rowversion / timestamp列的性能
我打算在我的数据库rowversion中添加大多数表来跟踪这些表中的更改.我知道添加它会影响查询的性能.

有没有人知道它是否会影响性能(慢几个百分点)或者我不应该将rowversion添加到许多表中,因为它会使DB慢得多.

解决方法

仅添加rowversion / timestamp列的性能差异是您的行现在宽8个字节.

当您开始实际使用它们时,实际的性能差异就会出现.但正如我在回答类似问题时指出的那样:RowVersion and Performance

If you’re not going use the rowVersion field for checking for updated items and instead you’re going to use it for consistency to ensure that the record isn’t updated since you last read,then this is going to be a perfectly acceptable use and will not impact.

Such As:

UPDATE MyTable SET MyField = ' @myField
WHERE Key = @key AND rowVersion = @rowVersion

因此,只检查行以确保自上次读取应用程序以来它没有更新时的性能将是微不足道的性能差异(无论如何它必须读取行来更新它).

但是,尝试使用rowversion / timestamp列作为自上次检查以来获取所有更新项目的方法时的性能将非常差.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读