Cita:
Iniciado por gnzsoloyo La query es un UPDATE, y conforme el manual de referencia oficial (
http://msdn.microsoft.com/es-AR/library/ms187373.aspx) cláusulas NOLOCK y READUNCOMMITTED no se deben usar en queries de tipo INSERT,
UPDATE y DELETE:
En el mismo manual hay una interesante nota destacada que dice:
Por lo demás, haceu un UPDATE masivo de una base en caliente, me parece algo extremadamente peligroso, que en todos los DBMS se desaconseja. Es preferible hacerlo off-line.
Excelente respuesta gnzsoloyo, por determinación de Microsoft la instrucción NOLOCK no debe utilizarse en operaciones del tipo DML en SQL Server 2008.+
En mi experiencia profesional, en cuanto a UPDATE MASIVOS de tablas con millones de registros, me uno a la recomendación de gnzsoloyo, se debe deshabilitar temporalmente la base (modo offline) y luego realizar el UPDATE.
En el caso que no se puede desconectar la DB se deberá realizar un UPDATE SEGMENTADO, es decir, dividiendo el total de los registros a actualizar en porciones iguales para hacer un uso más óptimo del DBMS.
Saludos a la comunidad.
damimg
DBA Specialist