Autor Tema: Conexion a MySql/Timeout/Error de Red/Server Caido  (Leído 3369 veces)

0 Usuarios y 1 Visitante están viendo este tema.

antonio2005pe

  • Bytes
  • *
  • Mensajes: 49
  • Reputación: +0/-1
    • Ver Perfil
Conexion a MySql/Timeout/Error de Red/Server Caido
« en: Junio 21, 2015, 02:45:29 am »
Buenas, actualmente estoy usando ado codigo para conectar a Mysql, pero el problema viene cuando el server esta caido o la red no esta correcta, quiero que no se me quede medio colgado el programa durante la conexion a la base de datos, ya intente cambiar el timeout pero no me da resultados, por favor alguien que me de una mano, este es mi codigo:
Código: [Seleccionar]
Const CNStr = "Driver={MySQL ODBC 5.2 Unicode Driver};Server=192.168.1.100;Port=3306;Timeout=5;Option=131072;St mt=;Database=DB;Uid=User;Pwd=Pass;"
Public CN As ADODB.Connection
Public RSUsers As ADODB.Recordset

Sub CNUsers(SQL As String)
On Error GoTo ErrRedUsers
    Set CN = New ADODB.Connection
    Set RSUsers = New ADODB.Recordset
    CN.ConnectionString = CNStr
    CN.Open
    RSUsers.CursorLocation = adUseClient
    RSUsers.LockType = adLockOptimistic
    RSUsers.ActiveConnection = CN
    RSUsers.Open SQL
Exit Sub
ErrRedUsers:
MsgBox Err.Description
End Sub

CNUsers "select * from users where Login=Login"


Gracias.

Albertomi

  • Gigabyte
  • ****
  • Mensajes: 281
  • Reputación: +153/-0
    • Ver Perfil
Re:Conexion a MySql/Timeout/Error de Red/Server Caido
« Respuesta #1 en: Junio 21, 2015, 02:36:33 pm »
Estimado antonio2005pe
 
Antes de intentar conectar con tu DB remota, valida si tienes conexión hacia el servidor remoto de base de datos.
Una de las formas es hacer un PING hacia la IP (192.168.1.100) del servidor de base de datos.
En estos link tienes unos ejemplos de como hacer PING desde VB
 
https://support.microsoft.com/en-us/kb/300197
  http://www.vbforums.com/showthread.php?673392-VB6-Clean-Ping-in-VB6-Code


Saludos, desde algún lugar de Lima-Perú
Saludos, desde algún lugar de Lima-Perú

coco

  • Administrador
  • Terabyte
  • *****
  • Mensajes: 548
  • Reputación: +63/-3
    • Ver Perfil
Re:Conexion a MySql/Timeout/Error de Red/Server Caido
« Respuesta #2 en: Junio 21, 2015, 08:00:16 pm »
@Albertomi, quizas el servidor mysql (daemon) se cae, y el server (OS) queda prendido, por ende el Ping va a contestar sin problemas...
La solucion seria hacer otra app que solamente compruebe esto, y que la misma se "tilde" mientras prueba conectarse... Si se conecta, envia un mensaje a la app principal indicando como resultó eso. Podes usar la clase clsDDE de cobein para enviar esta informacion entre apps muy facilmente.
Saludos
'-     coco
(No me cabe: Java, Python ni Pascal)
SQLite - PIC 16F y 18F - ARM STM32 - ESP32 - Linux Embebido - VB6 - Electronica - Sonido y Ambientacion

antonio2005pe

  • Bytes
  • *
  • Mensajes: 49
  • Reputación: +0/-1
    • Ver Perfil
Re:Conexion a MySql/Timeout/Error de Red/Server Caido
« Respuesta #3 en: Junio 22, 2015, 03:15:40 am »
Muchas gracias por sus respuestas, haré la prueba con ambos métodos para ver como me sale, Gracias.