Ver Mensaje Individual
  #12 (permalink)  
Antiguo 23/06/2009, 10:06
Avatar de Dradi7
Dradi7
 
Fecha de Ingreso: junio-2008
Ubicación: Peru - Lima
Mensajes: 1.518
Antigüedad: 16 años, 9 meses
Puntos: 220
Respuesta: Pasar como parametro nombre de columna

primero cuando tu declaras una variable char esta variable char de una longitud de 20 como tu la declaras siempre tomara los 20 valores es decir

si declaro esta variable

Declare @Code Char(10)

Set @Code = '123'

en verdad @Code valdra '123 '

ves la diferencia char siempre toma todo el ancho que ha sido declarado por esto es mejor que pases esa declaracion de la variable a un tipo varchar

Código sql:
Ver original
  1. ALTER PROCEDURE SP_LISTAR_CONCEPTO_DE_PAGO
  2. @flag VARCHAR(20)
  3. AS
  4. DECLARE @SQLString NVARCHAR(255)
  5. SET @pvarRegimen = N'SELECT codigo,descripcion FROM M_ConcePago WHERE ' + @flag + ' = ''1'' ORDER BY codigo'
  6. EXEC sp_executesql @pvarRegimen
  7. GO
  8. EXEC SP_LISTAR_CONCEPTO_DE_PAGO 'Lquinta'
__________________
La clave de todo triunfador es eliminar todas sus excusas y sus limitaciones

Última edición por Dradi7; 23/06/2009 a las 10:39