当前位置:  开发笔记 > 数据库 > 正文

SQL Server中插入与更新的成本

如何解决《SQLServer中插入与更新的成本》经验,为你挑选了1个好方法。

我有一张超过一排的桌子.该表用于索引tiff图像.每个图像都有像date,number等等的字段.我有用户以500个批量索引这些图像.我需要知道首先插入500行然后执行500次更新是否更好,或者当用户完成索引时,是否更好500个插入包含所有数据.一个非常重要的事情是,如果我首先进行500次插入,这次对我来说是免费的,因为我可以在前一天晚上完成.

所以问题是:插入或插入和更新是否更好,为什么?我id为每个图像定义了一个值,并且我在字段上也有其他索引.



1> Keith..:

Sql server中的更新导致幻影行 - 即Sql跨越一行并放入一个新行.删除的行将在以后删除.

插入和更新都会以这种方式导致页面拆分,它们都有效地"添加"数据,只是更新标记旧的东西.

除此之外,还需要先查找行,这对于大量数据来说可能需要比更新更长的时间.

插入将总是更快,特别是如果它们是有序的或者基础表没有聚集索引.

将大量数据插入表中时,请查看当前索引 - 它们可能需要一段时间才能更改和构建.在索引中间添加值总是较慢.

您可以将其视为附加到地址簿:Z先生可以添加到最后一页,而您必须在中间找到M先生的空间.

推荐阅读
重庆制造漫画社
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有