相关疑难解决方法(0)

如何在SQL Server 2005中回滚UPDATE查询?

如何在SQL Server 2005中回滚UPDATE查询?

我需要在SQL中执行此操作,而不是通过代码.

sql sql-server-2005 rollback sql-update

18
推荐指数
4
解决办法
15万
查看次数

最快速的大规模更新方式

假设您有一个包含大约500万条记录的表和一个nvarchar(max)填充了大量文本数据的列.您希望以尽可能最快的方式将此列设置为NULLif SomeOtherColumn = 1.

蛮力UPDATE在这里不能很好地工作,因为它将创建大型隐式事务并永远占用.

一次进行小批量50K记录的更新有效,但在32核/ 64GB服务器上完成仍需要47个小时.

有没有办法更快地完成此更新?是否有任何神奇的查询提示/表格选项牺牲其他东西(如并发)以换取速度?

注意:创建临时表或临时列不是一个选项,因为此nvarchar(max)列涉及大量数据,因此占用大量空间!

PS:是的,SomeOtherColumn已经编入索引.

sql t-sql sql-server

16
推荐指数
2
解决办法
3万
查看次数

标签 统计

sql ×2

rollback ×1

sql-server ×1

sql-server-2005 ×1

sql-update ×1

t-sql ×1