anidamiento de conexiones de base de datos

22/10/2005 - 11:23 por Enrique | Informe spam
hola a todos,

una vez hecho el carrito de compra, quiero dar a la empresa un acceso a los
pedidos, para ello dispongo que un combo que lista los clientes y una vez se
elige uno se muestran los datos del cliente elegido asi como una lista de
todos sus pedidos.

para hacer esto, rastreo primero los datos de pedidos. hasta aqui todo me va
bien pero cuando dentro de cada pedido, trato de mostrar los detalles de
pedidos, me da problemas.

he intentado hacerlo de varias formas pero imposible. visto que se trata de
2 select (uno para los pedidos y otro para los detalles de pedidos), creo 2
recordset sobre la misma conexion pero no funciona. tambien lo he intentado
llamando a un procedimiento para poder recrear la conexion y acceder a los
detalles de pedidos pero parecer ser que a ASP no le gusta el anidamiento de
conexiones aunque sea indirecto (llamada a procedimiento).

resumiendo, no me funcionan 2 recordset sobre la misma conexion o sobre
conexiones distintas mediante llamada a procedimiento.

¿sabeis como se puede hacer esto?


muchas gracias de antemano por su ayuda
 

Leer las respuestas

#1 Gatón
22/10/2005 - 15:31 | Informe spam
Hola:

En general y por múltiples razones, puedes buscar el tema en la web y
encontraras muchos articulos al respecto ya que es un tema importante, se
debe siempre liberar al servidor de cualquier carga innecesaria. Entonces
los criterios no son los mismos que en las aplicaciones de por ejemplo VB.
En las aplicaciones ASP se abre la conexión se hace la consulta y se cierra
la conexion.
Con ese esquema no tendras problemas en abrir tu conexión hacer un SELECT
para poblar el combo de clientes y de inmediato cierras la conexión (que
tampoco lo veo muy buen sistema ya que me imagino si la empresa es la
telefónica y tienes que cargar en tu combo 3 millones de clientes la cosa se
pondría fea y entonces si ya tienes que comenzar a filtrar los clientes por
algunos parametros ¿porque mejor no filtras en serio y simplemente ubicas el
cliente y ya no necesitas el primer combo?) bueno me fui lejos...sigo: luego
cuando el usuario decida seleccionar un cliente (podria pasar una hora y la
conexion abierta) abre la conexión y otro SELECT pobraría el segundo combo.

Disculpa las opiniones, un abrazo

Saludos

Enrique Medina
Santiago de Chile




"Enrique" escribió en el mensaje
news:
hola a todos,

una vez hecho el carrito de compra, quiero dar a la empresa un acceso a


los
pedidos, para ello dispongo que un combo que lista los clientes y una vez


se
elige uno se muestran los datos del cliente elegido asi como una lista de
todos sus pedidos.

para hacer esto, rastreo primero los datos de pedidos. hasta aqui todo me


va
bien pero cuando dentro de cada pedido, trato de mostrar los detalles de
pedidos, me da problemas.

he intentado hacerlo de varias formas pero imposible. visto que se trata


de
2 select (uno para los pedidos y otro para los detalles de pedidos), creo


2
recordset sobre la misma conexion pero no funciona. tambien lo he


intentado
llamando a un procedimiento para poder recrear la conexion y acceder a los
detalles de pedidos pero parecer ser que a ASP no le gusta el anidamiento


de
conexiones aunque sea indirecto (llamada a procedimiento).

resumiendo, no me funcionan 2 recordset sobre la misma conexion o sobre
conexiones distintas mediante llamada a procedimiento.

¿sabeis como se puede hacer esto?


muchas gracias de antemano por su ayuda



Preguntas similares