Python - ¿Establecer conexión por consulta?

 
Vista:

¿Establecer conexión por consulta?

Publicado por Soft 5VZ (2 intervenciones) el 04/07/2012 02:17:24
Hola.
Antes que nada quiero agradecer por su atención.
Tengo una duda. O bien quisiera que cuenten de alguna experiencia similar.

Tengo una aplicación en Python y trabajo con MySQL.
Mi modo de trabajar consiste en establecer una conexión con la base de datos y conservarla abierta durante la ejecución del programa y ejecutar a través de la misma todas las consultas.
Eventualmente sucede que se pierde la conexión por fallas en la red, u otros agentes externos por lo que el sistema pierde la conexión.
Entonces en base a lo expresado anteriormente quisiera su opinión respecto de las preguntas que planteare a continuación:
¿Es aconsejable abrir y cerrar la conexión por cada consulta realizada?
Si utilizo la misma conexión para toda la consulta y esta se pierde. ¿Utilizan algún procedimiento o sentencia especial para reconectar o se debe procesar la excepción de errores y reintentar la conexión?
Utilizo el modulo MySQLdb y desconozco algún otro.

Desde ya gracias por su comentarios.
Saludos…
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 2.239
Plata
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

¿Establecer conexión por consulta?

Publicado por xve (1646 intervenciones) el 04/07/2012 07:25:04
Hola, voy a intentar comentarte, haber si puedo ayudarte.

Si la base de datos es local (nuestra red) la conexión es permanente con la base de datos, aunque siempre existe la excepción de errores para reconectar si es posible, enviar un correo al administrador si no es posible, etc...

Si la base de datos es externa, se tiene que valorar si se mantiene o no la conexión, ya que si se van a realizar pocas peticiones al dia, y hay muchas aplicaciones en ejecución con este tipo de conexiones, a lo mejor es viable conectar y desconectar de la base de datos para cada consulta a realizar, aunque por poco que se pueda lo suyo es mantener la conexión y gestionarlo con las excepciones.

Espero que te sirva... coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

¿Establecer conexión por consulta?

Publicado por Soft 5VZ (2 intervenciones) el 04/07/2012 14:17:49
Hola.
Gracias por tu tiempo.

Efectivamente es una conexión local. En estos momentos trabajo con una conexión activa pero eventualmente se pierde la conexión por apagado de un switch u otra razón.
Cuando esto sucede el sistema deja de responder, entonces a cerrar y abrirlo de nuevo.
Se me ocurre que la realizar una consulta si da error de conexión se debe reintentar la conexión o algún otro método…
Entiendo perfectamente lo que mencionas.

Muchas gracias por tu respuesta.

Saludos…
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar