Ver Mensaje Individual
  #2 (permalink)  
Antiguo 19/07/2011, 19:23
Avatar de Joch_pa
Joch_pa
 
Fecha de Ingreso: octubre-2009
Ubicación: Pachuca De Soto, Hidalgo, Mexico, Mexico
Mensajes: 122
Antigüedad: 14 años, 6 meses
Puntos: 7
Respuesta: Error en procedimiento almacenado

ok... seria ALGO asi?

Código SQL:
Ver original
  1. CREATE PROCEDURE dbo.procSelectGeneral
  2.     @condiciones AS VARCHAR(200)
  3.     , @campos AS VARCHAR(300)
  4.     , @tabla AS VARCHAR(50)
  5. AS
  6.     IF @condiciones=''
  7.     BEGIN
  8.         SELECT @campos
  9.         FROM @tabla
  10.     END
  11.     ELSE
  12.     BEGIN
  13.         SELECT @campos
  14.         FROM @tabla
  15.     WHERE @condiciones
  16.     END
  17. GO

Pero tengo mis reservas a que te funcine, pues @tabla es una variable, no una tabla

Lo modifique de la siguiente forma, prueba ambas.



Código SQL:
Ver original
  1. CREATE PROCEDURE dbo.procSelectGeneral
  2.     @condiciones AS VARCHAR(200)
  3.     , @campos AS VARCHAR(300)
  4.     , @tabla AS VARCHAR(50)
  5. AS
  6.     DECLARE @str VARCHAR(8000)
  7.     SET @str = 'SELECT '+ @campos +' FROM '+@tabla
  8.     IF @condiciones<>''
  9.     BEGIN
  10.         SET @str = @str + ' WHERE ' @condiciones
  11.     END
  12.     EXEC(@str)
  13. GO