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)
-   -   Comprobar conexion antes de conectar (https://www.clubdelphi.com/foros/showthread.php?t=69772)

jandro 08-09-2010 09:28:40

Comprobar conexion antes de conectar
 
Hola a todos.

Tengo un programita hecho con InterBase y Firebird 2.1.

El tema es que quiero probar que los datos que mete el usuarios de el servidor y la base de datos son correctos antes de darle el IBDataBase1.Connected:=true; Por que si por lo que sea la ip esta mal o la ruta me salta un error IBDataBaseError que no soy capaz de controlar con ninguna excepcion.

Alguien sabe alguna manera de testear la conexion sin llegar a realizarla??

Muchas gracias.
Saludetes.
Jandro.

Rockin 08-09-2010 10:06:52

¿Por que no haces un ping a la maquina donde esté la BD? Si te contesta entonces conectas.

Saludos.

Casimiro Notevi 08-09-2010 10:42:41

Cita:

Empezado por jandro (Mensaje 375761)
[..] Tengo un programita hecho con InterBase y Firebird 2.1.

¿Con interbase y firebird? :confused:

Cita:

Empezado por jandro
El tema es que quiero probar que los datos que mete el usuarios de el servidor y la base de datos son correctos antes de darle el IBDataBase1.Connected:=true;

No sé si tienes alguna necesidad especial para hacerlo así, pero lo normal es conectar a la base de datos al inicio del programa, y desconectar al cerrar el programa.

Cita:

Empezado por jandro
[..] no soy capaz de controlar con ninguna excepcion.

Código:

try
  ibdatabase.connected := true;
except
  // por aquí pasa cuando no ha podido conectar
end;


jandro 08-09-2010 15:46:11

Hola y gracias por las respuestas.

Para Rockin, el ping me vale para saber si el PC servidor esta online, pero no me permite saber si la base de datos esta donde deberia (o alguien ha tocado) y tampoco me cura de algun error propio del server de firebird.


Para Casimiro Notevi, tengo necesidad de hacerlo por que es un programa para mi empresa y todo el mundo toca todos los ordenadores, entonces me gustaria saber si todo sigue bien antes de darle a conectar y que salga un error de esos que te dejan pillao el ordenador. Y en cuanto a lo de la excepcion, no se por que no funcion con try ... except... es un misterio!!

Saludos y gracias de nuevo.
Jandro.

Casimiro Notevi 08-09-2010 16:30:24

Cita:

Empezado por jandro (Mensaje 375786)
[..] y tampoco me cura de algun error propio del server de firebird.

¿Y cuál es un "error propio del server de firebird"?

Cita:

Empezado por jandro
[..] tengo necesidad de hacerlo por que es un programa para mi empresa y todo el mundo toca todos los ordenadores, entonces me gustaria saber si todo sigue bien antes de darle a conectar y que salga un error de esos que te dejan pillao el ordenador.

No sé cómo es tu empresa, pero no conozco ninguna empresa en la que "todo el mundo toca todos los ordenadores".
Si tienes un servidor firebird, ese ordenador no puede tocarlo nadie. Y si alguien lo toca recibirá un castigo empresarial.

Cita:

Empezado por jandro
Y en cuanto a lo de la excepcion, no se por que no funcion con try ... except... es un misterio!!

Amigo, jandro, aquí no hay misterios, las cosas son o no son, están o no están, funcionan o no funcionan, sí o no, uno o cero, ya sabes ;)
Si pones aquí un trozo de código para que le echemos un vistazo... nos será más fácil ayudarte en esa labor.

Rockin 09-09-2010 14:06:34

Hola estoy con Casimiro, el servidor no debe de tocarlo nadie. Imagino que si te hace ping la maquina está OK y el servivio de Firebird Funcionando, no le veo más misterio.
Cita:

pero no me permite saber si la base de datos esta donde deberia
Esto no lo entiendo, ¿la BD se mueve o algo así?

Casimiro Notevi 09-09-2010 14:16:48

Cita:

Empezado por Rockin (Mensaje 375846)
[..] Esto no lo entiendo, ¿la BD se mueve o algo así?

Sale por patas... es que con estas calores... seguro que se va a la playa a darse un chapuzón y luego vuelve :D:D:D

Rockin 09-09-2010 16:27:17

Ya te digo, es que no veas la que estamos pasando en Málaga que estamos ya en septiembre.


La franja horaria es GMT +2. Ahora son las 16:54:24.

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