Acceso a bd lento

Estoy haciendo un programa en visual basic 6.0 que ataca una base de datos hecha en access 2000.
La conexión a la BD la hago de la siguiente manera:
Dim bd As New ADODB.Connection
Dim rs As New ADODB.Recordset
bd.Provider = "Microsoft.Jet.OLEDB.4.0"
bd.Open RutaBD
rs.Open "select * from usuari? , adOpenForwardOnly, adLockOptimistic
If rs.BOF And rs.EOF Then
...
Else
...
End if
Mi Problema es que durante la ejecución del programa tengo que hacer un montón de peticiones a la base de datos y teniendo la bd en un equipo remoto la velocidad con la que accedo es bastante decepcionante. He modificado mi programa para que haga las mínimas peticiones posibles con el mismo resultado pero sigue siendo demasiado lento.
Ejecutando las rutinas paso a paso me ha parecido que la que tiene reales problemas de velocidad a parte de alguna sentencia sql compleja es abrir la bd (bd. Open rutabd).
Mis preguntas son:
Podría por ejemplo abrir una conexión a la bd, ¿al inicio del programa i cerrarla cuando se cierre este?
¿Esto daría problemas al tener varios usuarios conectados?
¿O bien el método empleado es el correcto y lo que falla es el gestor de BD Access y debería usar por ejemplo MySQL?
A ver que puedes comentarme.

2 Respuestas

Respuesta
1
La lentitud de la petición a la Base de datos puede deberse a muchas cosas, tales como el tipo de placa de red (10BaseT o 100BaseT -mejores- o bien si son Ethernet 10/100 aun mejor). EL problema de el ancho de banda también es perjudicial. Hay que ver "que tan remoto está la base", vale decir, si es vía Internet o bien en una red local...
A tu primera pregunta, te contesto que no es conveniente, porque, eventualmente se te cayera el sistema, perderías las transacciones que hayas hecho o corromperías la base.
Puede fallar el gestor de la base: Yo en lo personal ya lo utilizo Access, sino MySQL que es realmente un servidor de base de datos.
Respuesta
Te comento que eso es fiable, ya que yo tengo varios programa que realizan lo mismo. A mi, personalmente, no me da ningún error haciendo lo que dices. (Ni problemas con los usuarios, ni nada.)
Pruébalo, porque a mi me funciona muy bien.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas