nvarchar (max) sigue siendo truncado
Así que estoy escribiendo un procedimiento almacenado en MS SQL Server 2008. Es una consulta muy larga y tengo que escribirla dinámicamente, así que creo una variable llamada@Query
y hacerlo de tipoNVARCHAR(MAX)
. Ahora he estadodicho que en las versiones modernas de SQL Server,NVARCHAR(MAX)
puede contener una cantidad ridícula de datos, mucho más que el máximo original de 4000 caracteres. Sin embargo,@Query
todavía se está truncando a 4000 caracteres cuando intento imprimirlo.
DECLARE @Query NVARCHAR(max);
SET @Query = 'SELECT...' -- some of the query gets set here
SET @Query = @Query + '...' -- more query gets added on, etc.
-- later on...
PRINT LEN(@Query) -- Prints out 4273, which is correct as far as I can tell
PRINT @Query -- Truncates value to 4000 characters
EXEC sp_executesql @Query -- totally crashes due to malformed (truncated) query
¿Estoy haciendo algo incorrectamente o estoy completamente equivocado acerca de cómoNVARCHAR(MAX)
¿trabajos?