Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Validar Conexion a Base De Datos (https://www.clubdelphi.com/foros/showthread.php?t=93831)

carlos gonzalez 25-03-2019 17:41:22

Validar Conexion a Base De Datos
 
Hola Amigos buenos días.
Alguien sabe de que manera puedo validar si una base de datos o el servidor esta disponible, tengo una aplicación desarrollada en Delphi 7 y utilizo dbexpress para conexión a la base de datos. Es muy común que den de baja el servidor o la base de datos para hacer algún mantenimiento. Lo que quiero hacer es que al iniciar el sistema antes que nada valide la conexión de la bd o del servidor para ver si están disponibles, en el caso de que no estén disponibles mandar algún mensaje y cerrar la aplicación, en lugar de que solo me mande el error de conexión de base de datos, ya intente varias funciones pero no me han dado resultado. Alguien sabe como pudiera hacer esto y que me lo pudieran compartir, se los agradecería infinitamente.

Su amigo Charless

Casimiro Notevi 25-03-2019 19:02:28

No necesitas nada especial:
Código Delphi [-]
Conectar
try
  Abrir Tablas Que Necesitas
except
  No Hay Conexión
end

carlos gonzalez 25-03-2019 20:36:18

Esa opción ya la intente, el problema es que manda primero el mansaje de error de conexión de base de datos y pasma la aplicación y ya hasta que se responden todos los mensajes llega a la excepción y quisiera atrapar en alguna variable la exepción para poderla controlar el evento

Casimiro Notevi 25-03-2019 20:47:48

Esto tiene que funcionar como quieres:
Código Delphi [-]
try
  conectar
except
  tu mensaje
end

carlos gonzalez 25-03-2019 21:47:26

1 Archivos Adjunto(s)
Este es el error que aparece al momento de abrir la conexión antes de llegar a la a excepción

anexo la imagen del mensaje

Casimiro Notevi 25-03-2019 21:52:10

Cita:

Empezado por carlos gonzalez (Mensaje 531255)
Este es el error que aparece al momento de abrir la conexión antes de llegar a la a excepción
anexo la imagen del mensaje

Imagino que tendrás puesto algo para que se muestre.
Pon el código fuente que lo veamos, no podemos adivinar.

Neftali [Germán.Estévez] 26-03-2019 12:17:26

Prueba a visualizar la clase de la Excepción para luego capturarla correctamente.


Código Delphi [-]
try   conectar except
  on E:Exception do begin
    ShowMessage('Tu Mensaje; - MENSAJE: ' + E.Message + '  - CLASE: ' + E.ClassName)
  end;
end

Una vez que sepas la clase de la excepción que genera la conexión fallida puedes capturarla correctamente.

orodriguezca 28-03-2019 20:34:33

El error que te está mostrando lo genera la libreria de Client Access cuando un Power I (AS/400) está negando las conexiones a la base de datos. Este error es lo suficientemente explicito para saber que la base de datos no está disponible. Para poder avanzar en la solución del problema es vital que nos muestres tu código fuente, sino no hay forma de colaborar. De todas maneras verifica si el componente de conexión a la base de datos o algún dataset está abierto en tiempo de diseño; esto es, con frecuencia, la causa de este tipo de problemas.


La franja horaria es GMT +2. Ahora son las 01:42:00.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi