Problema con comas en procedimiento almacenado

Soltrac

Vereis, necesito hacer lo siguiente:

El código es de SQL Server

DECLARE @select nvarchar(5000)

SET @select = 'SELECT bla FROM bla WHERE fecha BETWEEN ' + @fechainicio + ' AND ' + @fechafin + '

EXEC(@select)

El problema es que @fechainicio y @fechafin son fechas con horas, es decir, contienen espacios y eso da problemas.

He probado a poner

SET @select = 'SELECT bla FROM bla WHERE fecha BETWEEN "' + @fechainicio + '" AND "' + @fechafin + '"'

Pero claro, al poner las comillas dobles se cree q es una columna.

Evidentemente, las fechas deben ir en comillas simples pero para hacer una cadena de caracteres en un procedimiento almacenado necesito 2 comillas simples. ¿Que solución hay? Existe algún caracter de escape para poder añadir yo el caracter comilla simple???

EDIT: Se que se puede usar el caracter comilla doble (") para el SELECT, pero me dice q no se puede usar para mas de 128 caracteres y mi SELECT es muy largo, con comillas simples lo acepta perfectamente.

Gracias!

Soltrac

Encontré la solución tras unas horas de googleo!

La solución es usar la función CHAR(), jejeje.

Usuarios habituales

  • Soltrac