
Es una sola tabla?? si es asi, ninguno de los metodos me parecen correctos, pero el segundo creo que es peor, ya que haces una subconsulta de datos que ya tienes.
IDProductos = Request.Form("products")
Este es un arreglo dentro de una forma no?
Por lo tanto cuando asignes esto a la variable IDProductos, deberas tener un string separado por comas con los IDs de los productos en cuestion.
IDProductos sera = "4, 3, 7, 10, 255"
No es necesario hacer ningun arreglo, puedes utilizar una sola sentencia con una clausula IN
SQL = "SELECT * FROM Productos WHERE IdProd IN( "&IDProductos&")"
Asunto resuelto.
Ahora hablando de eficientar los recursos en el servidor, es pesimo hacer una seleccion del tipo "*" pues cuando haces esto, tu aplicacion tendra que barrer toda la tabla y determinar desde el tipo de dato de cada campo, hasta todos los campos que tienes en esa tabla. Lo aconsejable es seleccionar explicitamente los campos que quieras.
Salu2,