Antes de SQL Server 2008, no se permitía asignar un valor predeterminado (o valor inicial) a una variable local; de lo contrario, aparecerá este mensaje de error.
SET
)
DECLARE @thresholdDate DATETIME
set @thresholdDate = '2014-11-30'
Para obtener más detalles sobre el error:http://www. sql-server-helper.com/error-messages/msg-139.aspx
Solución 2: (Actualizar )
Otra forma de evitar este error, que es una solución un poco exagerada, es actualizar a SQL Server 2008. SQL Server 2008 ahora permite asignar un valor a una variable en la instrucción DECLARE.