SQL Server - Dudas con el uso de execute

   
Vista:

Dudas con el uso de execute

Publicado por jose (3 intervenciones) el 30/06/2009 16:01:08
Aquí les describo mi problema. Uso SQL Server 2000 y lo que quiero hacer es asignarle valor a un parámetro de salida que me da la cantidad de registros de una tabla, el problema me da cuando quiero obtener el resultado utilizando un filtro.

Descartemos el filtro ya que lo uso con otros procedimientos y me funciona bien.

Este caso (sin filtro) me funciona bien:

@CantIncidencias int output --Parámetro de salida

set @CantIncidencias = (Select count(*) from Historico)

-------------------------------------------------------------------------------------------------------------------------------

Caso (con filtro) con problemas:

@Filtro varchar (4000) --Parámetro de entrada

@CantIncidencias int output --Parámetro de salida

Declare @Cadena varchar(8000)

set @Cadena = ('set @CantIncidencias = Select count(*) from Historico where ' + @Filtro)
exec(@Cadena)

------------------------------------------------------------------------------------------------------

Cuando utilizo el segundo caso me da error, no se si estoy utilizando mal execute. agradecería cualquier solución
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Isaias

RE:Dudas con el uso de execute

Publicado por Isaias (3180 intervenciones) el 01/07/2009 19:03:53
Cambia tu EXEC(@Cadena) por EXECUTE SP_EXECUTESQL @VariableNvarchar
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Dudas con el uso de execute

Publicado por jose (3 intervenciones) el 02/07/2009 14:50:05
Muchas gracias por la respuesta, enseguida lo probaré.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar