Eduardo, 
baixei o MyDAC e parece-me que vou ter que investir neste componente. A conexão 
continua sendo perdida mas diferente do Zeos ela é restabelecida, vou ver ainda 
com o tratar a mensagem de erro.

Ele carrega alguma .dll para não ter a obrigatoriedade de instalar o MySQL 
Client?

Há demora na gravação dos dados, como não estou acostumado (ainda) com MySQL 
não sei se estou com problema de código ou se é mesmo caracteristica da conexão.

Grato,

Levy




________________________________
From: Eduardo Silva dos Santos <eduardo....@gmail.com>
To: delphi-br@yahoogrupos.com.br
Sent: Mon, July 5, 2010 5:57:59 PM
Subject: Re: [delphi-br] MySQL server has gone away

Levy, o mysql é exigente com a conexão, qualquer anormalidade e ele derruba
a mesma.

Quanto eu usava zeos eu implementei uma rotina que reconectava
automaticamente caso a mesma fosse perdida.
eu não sei se isso foi implementado na versão atual do zeos. Vou tentar
achar a versão que fiz essa mudança e te passo, assim vc aplica ai..

Bom, mudando de zeos para MyDAC, não sei se você conhece, nele existe uma
teconologia que faz o mesmo processo, se a conexão cair, ele reconecta de
forma transparente.. caso não conheça, veja: www.devart.com/mydac


Att,
.......................................................
Eduardo Silva dos Santos
DRD SISTEMAS
(27) 3218-4201
(27) 9961-7095
MSN: eduardo....@gmail.com
Site: http://www.drdsistemas.com.br/
.......................................................


Em 5 de julho de 2010 14:01, Levy Pereira <levypere...@yahoo.com> escreveu:

>
>
> Prezados amigos,
>
> como um (por enquanto) iniciante com o MySQL estou apanhando, estou usando
> o ZEOS para conexão.
>
> A conexão é instável. Muitas vezes procede normalmente as consultas,
> atualizações ou inserções, em outras o fatal erro acontece e somente volta a
> conectar depois de sair e entrar no aplicativo.
>
> Este erro acontece algumas vezes quando o aplicativo fica ativo sem
> atividade.
>
> Antes de começar qualquer procedimento checo se há conexão:
>
> if BD.Conexao.Connected = false then BD.Conexao.Reconnect;
>
> Depois o processo:
>
>  BD.Query01.Close;
>  BD.Query01.SQL.Clear;
>  BD.Query01.SQL.Add('start transaction');
>  BD.Query01.ExecSQL;
>  BD.Query01.Close;
>  BD.Query01.SQL.Clear;
>  BD.Query01.SQL.Add(
>        'insert into fornecedores ( cnpj, razaosocial, telefone, contato,'+
>        'email ) values ( '+A01+','+A02+','+A03+','+A04+','+A05+')');
>  BD.Query01.ExecSQL;
>  BD.Query01.SQL.Clear;
>  MessageBox( Handle, 'Fornecedor adicionado com sucesso', 'Informação', 64
> );
>  passou := True;
>  BD.Query01.SQL.Add('commit');
>  BD.Query01.ExecSQL;
>  BD.Query01.SQL.Clear;
>  BD.01.Refresh;
>
> Grato pela ajuda!
>
> Levy
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]



------------------------------------

-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>



      

[As partes desta mensagem que não continham texto foram removidas]

Responder a