| Exibir mensagem anterior :: Exibir próxima mensagem |
| Autor |
Mensagem |
CtrlRs Profissional


Registrado: Domingo, 30 de Janeiro de 2005 Mensagens: 531
|
Enviada: Dom Mar 17, 2013 6:40 pm Assunto: Requisição ao SQLConnection - Sempre connected? |
|
|
Olá pessoal,
Estou implementando os componentes DBX e surgiram algumas dúvidas:
SQLConnection.Connected := True:
Posso conectar logo na inicialização do sistema? Caso o computador tenha problemas com a rede, como queda de conexão. Gera erro? Como vocês tratam isto? Não seria melhor conectar, fazer a transação e em seguida desconectar?
valeu galera! |
|
| Voltar ao Topo |
|
 |
Batera Colaborador


Registrado: Quarta-Feira, 23 de Julho de 2008 Mensagens: 4899 Localização: Maringá
|
Enviada: Dom Mar 17, 2013 7:15 pm Assunto: |
|
|
Se houver queda de conexão na rede, irá gerar um erro sim.
Não sei os outros desenvolvedores, mas eu tenho o hábito de testar a conexão na inicialização do sistema, mais ou menos dessa forma:
| Código: | try
SQLConnection.Connected := True;
except
MessageDlg('Erro ao conectar no banco de dados.', mtWarning, [mbOK], 0);
end; |
O importante é trabalhar com exceções. Quanto mais você envolver o seu código vulnerável a erros dentro de exceções, mais o seu sistema terá confiabilidade e disponibilidade. |
|
| Voltar ao Topo |
|
 |
CtrlRs Profissional


Registrado: Domingo, 30 de Janeiro de 2005 Mensagens: 531
|
Enviada: Seg Mar 18, 2013 5:40 pm Assunto: |
|
|
uhmmm legal. Estou usando o try como você também. Mas você conecta o SQLConnection somente uma vez?
Ou a cada requisição?
Obrigado pelo retorno |
|
| Voltar ao Topo |
|
 |
Batera Colaborador


Registrado: Quarta-Feira, 23 de Julho de 2008 Mensagens: 4899 Localização: Maringá
|
Enviada: Seg Mar 18, 2013 10:42 pm Assunto: |
|
|
Boa pergunta, CtrlRs.
Eu conecto somente uma vez (na inicialização do sistema), mas o correto seria ter uma função genérica ou uma classe que fizesse essa verificação a cada acesso ao banco de dados.
Perderíamos um pouco no desempenho, já que antes de cada solicitação essa verificação seria feita, mas em compensação o sistema teria mais confiabilidade e condições de se recuperar de falhas na rede. |
|
| Voltar ao Topo |
|
 |
|