Ir para conteúdo
Fórum Script Brasil
  • 0

Alias


Guest - Alexandre -

Pergunta

Guest - Alexandre -

Quero que a minha aplicação ao ser executada verifique se o banco de dados (access) existe mesmo e se esta na pasta original, caso não esteja deve-se abrir uma tela para setar o banco de dados e a propriedade ConnectionString do Ado Connectios receber o caminho do Banco de Dados. Por favor me ajudem.

Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

Olá!

Para resolver o seu problema você pode tentar o seguinte código:

procedure TForm1.FormCreate(Sender: TObject);
begin
  If not(fileexists('local/arquivo')) then (1)
  Begin
    ShowMessage('Seu arquivo de banco de dados está faltando ou está em outro local'); (2)
    OpenDialog1.Execute;
      If OpenDialog1.Execute then
        ADOConnection1.ConnectionString := OpenDialog1.FileName;(3)
  End;
end;
Bom, basicamente ele verifica a existencia do arquivo em (1), onde 'local/arquivo' é o endereço e o nome do banco de dados, você pode colocar também a propriedade ConnectionString, assim:
 ...(FileExists('ADOConnection.ConnectionString')... 

.

Em (2) o código avisa o usuário que o arquivo está faltando, e em (3) a aplicação "joga" o local e nome do arquivo aberto com o OpenDialog (Paleta Dialogs) na propriedade ConnectionString do ADO.

No meu teste, o único problema foi que ao escolher o banco de dados na dialog você deve clicar em "ABRIR" pois não abre com o duplo clique...Se souber resolver, poste aqui!

Obs.: O teste foi feito com banco de dados Access!

Link para o comentário
Compartilhar em outros sites

  • 0

Olá LAZARON!!

É só verificar se o arquivo já existe, caso sim não executa o OpenDialog.

If not(fileexists('local do arquivo')) then

OpenDialog.Execute;

Não testei mas acho que da certo.

cara valeu pela ajuda e espero que eu tenha lhe ajudado tb.

Testa ai e posta o resultado. Vou deixar este post aberto.

Qualquer coisa meu mail é aslalexandre@hotmail.com

Link para o comentário
Compartilhar em outros sites

  • 0

esse código que você passou verifica se existe ou não o arquivo, o q eu pretendo é, tipo, salvar em um arquivo texto ou outro o novo endereço do banco de dados, caso o usuário resolva mudá-lo, porque se ficar assim

If not(fileexists('local do arquivo')) then

OpenDialog.Execute;

, o programa vai abrir o "OpenDIalog" toda vez que for executado. Espero ter sido mais claro...
Link para o comentário
Compartilhar em outros sites

  • 0

Amigo

Estou sem o delphi neste momento mas da para fazer o que você esta querendo sim, é só fazer criar um arquivo txt e guardar nele o caminho e toda vez que o sistema for iniciado ele abre este arquivo e compara com o caminho do banco de dados do seu sistema.

Quando estiver com o delphi e com meu pc te mando ou posto o código aki...

Alexandre

Link para o comentário
Compartilhar em outros sites

  • 0

Olá Alexandre,

Como você está usando MS-ACCESS, uma boa opção é criar um arquivo com extensão UDL. A tecnologia ADO permite a utilização destes arquivos UDL, os quais têm semelhanças com a utilização de ALIAS no caso do BDE.

Um exemplo do conteúdo deste arquivo pode ser (edite-o no NOTEPAD mesmo e salve-o com a extensão UDL):

[oledb]

; Everything after this line is an OLE DB initstring

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\Programa\meuBD.mdb;Persist Security Info=False

Depois de fazer isto, no seu componente ADOConnection, dê um duplo-clique na propriedade ConnectionString e selecione a opção Use Data Link File. Clique em BROWSE e localize o seu arquivo UDL.

Meu, depois de fazer isso, você pode colocar o seu banco de dados onde quiser. Basta que você coloque o arquivo UDL na mesma pasta do seu aplicativo, dê um duplo-clique no arquivo UDL e informe o local onde o seu arquivo MDB se encontra.

Na teoria parecia meio complicado, mas é super fácil... Qualquer coisa dá um toque, pois este recurso quebra um galhão.

Abs...

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...