ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Testar Conexão do Banco de Dados FireBird

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
AlemaoJoinville
Novato
Novato


Registrado: Domingo, 14 de Mai de 2006
Mensagens: 6

MensagemEnviada: Seg Mai 07, 2007 3:27 pm    Assunto: Testar Conexão do Banco de Dados FireBird Responder com Citação

Gostaria de uma ajuda,preciso saber como testo a conexão com o Banco de dados Firebird estou utilizando o Delphi e o componente para a conexão com o banco é o IBOBataBase,o problema é preciso testar a conexão para saber se o servidor esta ligado, caso ele não esteja apareça uma mensagem para o usuario verificar o servidor.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Dragon_Ryu
Aprendiz
Aprendiz


Registrado: Domingo, 10 de Abril de 2005
Mensagens: 170
Localização: St Cruz do Sul - RS

MensagemEnviada: Seg Mai 07, 2007 8:11 pm    Assunto: Responder com Citação

Pra verificar se o servico esta ativo eu nao sei Sad , mas voce pode usar esses comandos para iniciar e parar o servico do firebird:

Primeiro adicione na uses do forme a Unit ShellApi.

Para dar um start o Serviço do banco :
Código:
WinExec('C:\Arquivos de programas\Firebird\Firebird_1_5\bin\instsvc.exe start',SW_NORMAL);


Para dar um ShutDown o Serviço do banco :
Código:
WinExec('C:\Arquivos de programas\Firebird\Firebird_1_5\bin\instsvc.exe stop',SW_NORMAL);


Axo q isso ja da uma maozinha Wink
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
Dragon_Ryu
Aprendiz
Aprendiz


Registrado: Domingo, 10 de Abril de 2005
Mensagens: 170
Localização: St Cruz do Sul - RS

MensagemEnviada: Seg Mai 07, 2007 8:13 pm    Assunto: Responder com Citação

Fucando pelo google axei essa dica em um forum:

Citação:
Vc pode utilizar uma função da API do Windows (FindWindow) e procure pela classe IB_SERVER. Se vc encontrar, significa que o servidor está rodando, caso contrátio, vc pode chamar outra função (WinExec ou ShellExecute) para startar o servidor FB
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
gilsonnrodrigues
Moderador
Moderador


Registrado: Quinta-Feira, 14 de Abril de 2005
Mensagens: 9009
Localização: Governador Valadares-MG

MensagemEnviada: Seg Mai 07, 2007 9:00 pm    Assunto: Responder com Citação

boa noite AlemaoJoinville!!


pelo q entendi vc ta se referindo a um caso em q o usuario está em uma maquina cliente e não no servidor de dados.

vc pode testar em um bloco protegido "try except" q serve tanto pra qdo é acesso local qto pra acesso remoto.
veja:

Código:

procedure ConectarBanco(Base : TIB_Connection);
var
  S : string;
begin
  repeat
    try
      Base.Open;
    except
      on E : EIB_ISCError do
      begin
        case E.ERRCODE of
          335544375 : S := 'O servidor do banco de dados não foi carregado.';
          335544721 : S := E.Message;
          else
            raise;
        end;

        if Application.MessageBox(PChar(S), 'Banco de dados indiponível',
          MB_RETRYCANCEL or MB_ICONERROR {or MB_DEFBUTTON2}) <> ID_Retry then
          Abort;
      end
      else
        raise;
    end;
  until Base.Connected;
end;



este exemplo aparece a msg pra o usuario com a opção de ele clicar em "repetir" pra tentar novamente ou cancelar.


qdo o pc servidor estiver desligado demora um tempinho pra dar a msg de erro mas funciona blz.

espero ter ajudado!!!
t+
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
renasti
Novato
Novato


Registrado: Sexta-Feira, 3 de Janeiro de 2014
Mensagens: 61

MensagemEnviada: Sex Jan 31, 2014 10:29 pm    Assunto: Responder com Citação

Pessoal, qual unit devo usar para implementar este código que o amigo postou ai, to tentando usar e dar erro de Undeclared.

Valeuuu
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB