Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/09/2012, 10:17
th3r0rn
 
Fecha de Ingreso: noviembre-2007
Mensajes: 504
Antigüedad: 16 años, 5 meses
Puntos: 2
Store procedura como consultyar where in varios valores

Hola, Tengo un store procedure, en el cual tengo una instruccion
where
Optimas.Codigo in (@codigo) <-Los codigos tienen q ser numericos ya que asi eta definiada esa columna, como se ve es una consulta where para ingresar varios valores numericos pero nose como ya que no me lo permite, lo pase a varchar y ni aun asi. Les muestro mi store:
Código SQL:
Ver original
  1. SET ANSI_NULLS ON
  2. GO
  3. SET QUOTED_IDENTIFIER ON
  4. GO
  5. -- =============================================
  6. -- Author:      <Franco Luis Roberto>
  7. -- Create date: <05-Sep-2012>
  8. -- Description: <Show information of all lines,>
  9. -- =============================================
  10. ALTER PROCEDURE Report_All_Lines
  11.    
  12. @codigo VARCHAR(500),
  13. @StartDate Datetime,
  14. @EndDate Datetime  
  15.  
  16. AS
  17. BEGIN
  18.     -- SET NOCOUNT ON added to prevent extra result sets from
  19.     -- interfering with SELECT statements.
  20.     SET NOCOUNT ON;
  21.  
  22.    
  23. SELECT dbo.Optimas.Linea, dbo.pesos.Peso,dbo.htargets.Target, dbo.HTargets.Marca, dbo.pesos.Vaso, dbo.Optimas.Tubo, dbo.pesos.Hora
  24.  
  25. FROM pesos
  26. INNER JOIN Optimas ON optimas.codigo = pesos.codoptima
  27. INNER JOIN htargets ON optimas.codigo = htargets.codoptima
  28. WHERE
  29. optimas.codigo IN(@codigo)
  30.  
  31.  
  32. AND    
  33. dbo.pesos.fecha >=@StartDate AND dbo.pesos.fecha <=@EndDate
  34. AND
  35. dbo.htargets.Fecha >=@StartDate AND dbo.htargets.fecha <=@EndDate
  36.  
  37.  
  38. END
  39. GO
Si lo ejecuto asi:
Código SQL:
Ver original
  1. EXEC Report_All_Lines  '99','9/3/2012 11:00 AM','9/3/2012 12:00 PM'
Si me muestra datos, pero si le paso 2 parametros en codigo no me deja:

Código SQL:
Ver original
  1. EXEC Report_All_Lines  '99,84','9/3/2012 11:00 AM','9/3/2012 12:00 PM'
Código:
Msg 245, Level 16, State 1, Procedure Report_All_Lines, Line 19
Conversion failed when converting the varchar value '99,84' to data type int
.
Pueden por favor decirme si hay alguna manera de pasarle varios parametros sin la necesidad de tener que cambiar el tipo de dato de la columna codigo?