Utilizando clausua in en Store procedure

02/06/2005 - 22:59 por Alfredo Reyna | Informe spam
Hola a todos.
Estoy implementando un SP.

en el cual utilizo la instruccion In(@p1)

mi problema es que mi parametro puede ser uno o varios
ejemplo 'EXPPT' o 'EXPT','EXPMP',''
pero al pasarle mi parametro me lo toma como otro parametro. por la "," no
se si se pueda concatenar de alguna forma y me lo tome como uno algo como
('xxx','yyy')

ahorita tuve que definir cada tipo como parámetro.
si solo es uno lo lleno con nulos..

Si me pueden orientar sobre como hacerlo mas sencillo se los agradecere.

Espero haber explicado.

Gracias de Antemano

Preguntas similare

Leer las respuestas

#1 qwalgrande
02/06/2005 - 23:30 | Informe spam
Hola.

Este tipo de situaciones no tienen una solución simple. Puedes preparar la
ejecución de una consulta, por ejemplo:

declare @sql varchar(1000)

select @sql = 'select * from mitabla where campo in (' + @p1 + ')'
exec (@sql)

Aunque tiene su riesgo, te podrían hacer una inyección de código no deseado.
Si lo tienes suficientemente controlado, puede ser una opción.

qwalgrande

"De lo que ves créete la mitad, de lo que no ves no te creas nada"
V. del V.


"Alfredo Reyna" <Alfredo escribió en el
mensaje news:
Mostrar la cita
#2 Eleazar
03/06/2005 - 03:21 | Informe spam
Hola
igual te funciona la instruccion patindex
ejem.
Where PatIndex(@p1,Campo) > 0
te sugiero que siempre compruebes cual de todas las opciones que tengas es
mas rapida
suerte
"qwalgrande" escribió en el mensaje
news:
Mostrar la cita
deseado.
Mostrar la cita
como
Mostrar la cita
#3 Maxi
03/06/2005 - 03:35 | Informe spam
Hola, hace poquito escribi una solucion para esto, la puedes consultar en mi
blog.

http://weblogs.golemproject.com/acc.../3957.aspx


Maxi - Buenos Aires - Argentina
Desarrollador 3 Estrellas

Msn_messager:
mail: Maxi.da[arroba]gmail.com

"Alfredo Reyna" <Alfredo escribió en el
mensaje news:
Mostrar la cita
#4 Rubén Vigón
03/06/2005 - 10:47 | Informe spam
Hola Alfredo,

É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
Ads by Google
Search Busqueda sugerida