Se puede hacer este SP

07/06/2005 - 11:10 por Baldor | Informe spam
Necesito un stored procedure tal que en uno de sus parametros le pueda pasar
una lista de valores numéricos (o alfanumericos ya puestos).
Es decir, que quiero hacer algo parecido a esto:

CREATE PROCEDURE Prueba
@ventas varchar(1000)
AS
select * from tblventas where id_venta IN (@ventas)


Pero esto da error si a @ventas por ejemplo se le pasa el valor
'11,12,13,14'.
Devuelve el error: Error de sintaxis al convertir el valor varchar
'11,12,13,14' para una columna de tipo de datos int.

En cambio si solo le pasamos un valor , por ejemplo '11', funciona
correctamente

Alguien conoce la forma correcta de poder pasar esta lista de valores a un
SP, para despues utilizar el parametro en una clausula IN???
 

Leer las respuestas

#1 Rubén Vigón
07/06/2005 - 11:11 | Informe spam
Hola Baldor,

Échale un vistazo a mi articulito sobre el tema:

Implementación de argumentos variables mediante XML en SQL Server 2000
Cómo pasar un número de argumentos variables a los procedimientos almacenados usando XML, evitando el uso de SQL dinámico (sp_executesql)
http://www.mvp-access.com/rubenvigo...server.pdf

Un saludo!

Rubén Vigón
Microsoft MVP Visual Basic
http://vigon.mvp-access.com

Preguntas similares