jun*_*ich 5 t-sql database sql-server
Sql server 究竟是如何执行更新操作的?它会进行就地更新吗?或者它会删除然后插入受影响的每一行?我知道更新操作类似于删除操作,然后将旧值的插入存储在已删除中,并将新值存储到插入...
有人告诉我更新操作是通过删除然后插入来完成的,但我不确定为什么会这样实现。请赐教。
Tei*_*ark 4
MSDN 更新部分:
当 UPDATE 语句导致以下任一操作时,数据库引擎会将部分更新转换为完整更新: 更改分区视图或表的键列。 修改多行并将非唯一聚集索引的键更新为非常量值。
当 UPDATE 语句导致以下任一操作时,数据库引擎会将部分更新转换为完整更新:
更改分区视图或表的键列。
修改多行并将非唯一聚集索引的键更新为非常量值。
以及部分更新
部分更新事务直接在表列的用户定义位置写入字符串,而不像完全更新中那样发出删除和替换命令。 部分更新不支持多字节字符集转换。部分更新支持仅限于 Microsoft SQL Server。
部分更新事务直接在表列的用户定义位置写入字符串,而不像完全更新中那样发出删除和替换命令。
部分更新不支持多字节字符集转换。部分更新支持仅限于 Microsoft SQL Server。
我做了一些搜索,看来您问题的答案取决于您要更新的内容。
希望这可以帮助。
归档时间:
10 年,4 月 前
查看次数:
5275 次
最近记录: