Amigos les voy a pegar el siguiente codigo sencillo para ver si me entienden:
Código Delphi
[-]
type
TForm1 = class(TForm)
Label1: TLabel;
Timer1: TTimer;
ADOConnection1: TADOConnection;
ADODataSet1: TADODataSet;
procedure Timer1Timer(Sender: TObject);
private
public
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Timer1Timer(Sender: TObject);
begin
ADODataSet1.Close;
ADODataSet1.CommandText:=('SELECT curtime()');
ADODataSet1.Open;
label1.Caption:=ADODataSet1.Recordset.Fields.Item[0].value;
end;
end.
por lo que pueden ve es un simple Ttimer con una opcion de que cada segundo me verifique la hora con una sentencia SQL, ok todo funciona muy bien hasta que paro el servicio de Mysql, es normal que me aparezca la siguiente Exception: " EOleException, Mysql has gone away".. perfecto, ahora yo voy y reactivo el sercvicio de mysql, cuando la aplicacion intenta hacer su consulta mysql ya con el servicio corriendo me sigue dando la exception. Para que pueda reconectar debo cerrar la aplicacion y volverla abrir... ahora mi pregunta es la siguiente, hay alguna forma de volver a conectar a la base de dato sin tener que reiniciar mi aplicación.