首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

update 小表与大表之间有性能差别吗?解决办法

2012-02-05 
update 小表与大表之间有性能差别吗?update一张5个varchar字段的表和更新一张50个varchar字段的表效率上是

update 小表与大表之间有性能差别吗?
update   一张5个varchar字段的表和更新一张50个varchar字段的表
效率上是否有差别,我只更新某一行中的一个字段

update的实质是不是先做删除再作插入?
如果是这样,操作的代价岂不是很大,甚至高于insert?


[解决办法]
有差别的
[解决办法]
和数据量有关
[解决办法]
和索引也有关系.如果建立了索引.因在insert, update, delete时,数据库要自动重建索引.会丧失一定的性能.
[解决办法]
update实际是override,仅对需求修改的数据进行改写,效率当然比先del再insert高
[解决办法]
如果更新索引字段,将会影响速度
[解决办法]
pdate 一张5个varchar字段的表和更新一张50个varchar字段的表 
效率上是否有差别,我只更新某一行中的一个字段 
------------------------------------------
有差别。

update的实质是不是先做删除再作插入? 
如果是这样,操作的代价岂不是很大,甚至高于insert
---------------------------------
不一定。


如果你更新的字段是聚集索引(clustered index)的一部分,则会先删除再插入,并更新所有索引
如果更新的字段是一般索引的一部分,这直接更新其值,并更新被影响的索引
如果此字段不属于任何索引,则直接更新其值,对索引没有影响


[解决办法]

探讨
pdate 一张5个varchar字段的表和更新一张50个varchar字段的表
效率上是否有差别,我只更新某一行中的一个字段
------------------------------------------
有差别。

update的实质是不是先做删除再作插入?
如果是这样,操作的代价岂不是很大,甚至高于insert
---------------------------------
不一定。


如果你更新的字段是聚集索引(clustered index)的一部分,则会先删除再插入,并更新所有索引
如果更新的字…

热点排行