Sql server 一整行数据的更新和一行数据里面一两个字段的更新有差别吗?
有什么性能上的差别?
具体情况具体分析.
影响最大的就是索引
不是说 更新数据都是先删除再添加吗? 如果数据没改的话,数据库应该会有判断,不会影响没被修改列的索引吧?
有差别。
大叔,有什么差别,
@koi: 一个是一整行数据的更新
另外一个是一两个字段的更新
你没看出来差别好大吗?
然而以你的水平,咋写都一样,没人会让你写一千万并发的软件的,你放心好了。
@爱编程的大叔: 大叔 你这不虾扯吗? 更新数据都是先删除再添加
我只能说唯一不变的是自增列的那个主键id
基本没差别
对于数据库来说 为了检索
所以每条数据的占的空间是固定的
而对于 一次插入操作而言 首先是 执行检索操作
检索出来了 然后进行 I/O 操作
对于固定单元的 I/O操作我个人觉得 改一个字段2个字段没什么区别(除非你的数据量已经达到 I/O的瓶颈)
至于检索操作 应该也是一样的 但是根据一些特殊条件 有些时候检索操作从外部看起来一样 内部计划可能会根据返回值命中 不同的索引 在这里 对于检索会有一点区别 但是一般来说不会发生这种情况 基本也是可以忽略不计
性能上的基本没有差别。
如果数据库表有非空字段。。那么就有差别了。。
那么必须保证id 必须要有的 ,非空字段不为空。。否则你插入不了数据。。
没什么区别,,都是向数据库里面添加数据,只是更新两个字段的那行数据存在部分字段是空的情况