Parametro en un procedimiento almacenado
Publicado por Jesús (8 intervenciones) el 12/08/2002 14:09:53
Tengo el siguiente procedimiento almacenado :
CREATE PROCEDURE sp_miproc @lista_entrada varchar(255) AS
BEGIN
DECLARE @nitem varchar(20)
--print 'recibido : ' + @lista_entrada
DECLARE seleccion CURSOR FOR SELECT nitem from table where nitem in (@lista_entrada)
open seleccion
FETCH NEXT FROM seleccion INTO @nitem
--print 'status : ' + convert(varchar(5),@@fetch_status)
WHILE @@fetch_status = 0
BEGIN
print 'nitem : ' + @nitem
FETCH NEXT FROM seleccion INTO @nitem
END
CLOSE seleccion
DEALLOCATE seleccion
END
El tipo de dato nitem es varchar(20)
Cuando lo ejecuto con un solo elemento en la lista de entrada, funciona perfectamente :
EXEC sp_miproc @lista_entrada = 'VAR02000222'
Mi pregunta es ¿cómo debo pasarle la lista de entrada con más de un elemento?. He intentado :
'VAR02000222,VAR02000220'
'''VAR02000222'',''VAR02000220'''
'(''VAR02000222'',''VAR02000220'')'
Si no voy bien encaminado, ¿cual es la forma óptima de pasar una lista de valores a un
procedimiento almacenado para usarla en un cursor dentro del procedimiento almacenado?
Gracias. Jesús.
Valora esta pregunta


0