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

Login Prompt Em Tquery


JPedro

Pergunta

Boas.

Tou aqui com um problema com um login prompt que não consigo ver-me livre dele.

Falando em código eu tenho isto:

   q1.DatabaseName := emp_ori;
q2.DatabaseName := emp_dest;
QAct.DatabaseName := emp_Dest;[/codebox]

e, óbviamente, tenho que levar com o login prompt.

Para me vêr livre dele, acrescentei:

[codebox] Q1.Database.LoginPrompt := false;
Q2.Database.LoginPrompt := false;
QAct.Database.LoginPrompt := false;

O problema é que agora tenho uma EAccessViolation e não sei porquê.

Alguém pode dar uma ajuda?

Há alguma maneira diferente de fazer isto?

Será por não ter o componente Database criado? - Neste caso, o Q1.DatabaseName também não devia de dar erro?

Obrigado a todos.

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0
Guest --jpedro --

Boas.

Só agora me apercebi da burrice que escrevi ....

Claro que TQuery.DatabaseName é uma property de TQuery.

assim como TQuery.Database também é - mas é read only - tá no help e só agora vi.

Mas o problema mantém-se ... como removo aqueles chatos dos login prompt num TQUery, visto que ele faz a ligação directa á base de dados (sem o componete TDatabase) ?

Mais uma vez, obrigado a todos os que percam tempo a ler isto.

Link para o comentário
Compartilhar em outros sites

  • 0
Boas.

Só agora me apercebi da burrice que escrevi ....

Claro que TQuery.DatabaseName é uma property de TQuery.

assim como TQuery.Database também é - mas é read only - tá no help e só agora vi.

jpedro, sobre a propriedade DatabaseName o help diz que ocorrerá uma exceção no caso de você tentar alterar seu conteúdo e a query estiver aberta:

Note

Attempting to set DatabaseName when a database already associated with this component is open raises an exception.

Poderia ser este seu caso?

Mas o problema mantém-se ... como removo aqueles chatos dos login prompt num TQUery, visto que ele faz a ligação directa á base de dados (sem o componete TDatabase) ?
Observe que a propriedade DatabaseName dos componentes tipo dataset (TQuery ou TTable) é equivalente ao AliasName do componente TDataBase. Deste modo, para facilitar seu lado, talvez você possa adicionar os dois databases que você parece utilizar e ao invés de alterar a propriedade DatabaseName das suas TQuery, você liga elas a esses TDatabase e, neles, você altera no código a propriedade AliasName, além claro, de alterar as propriedades LoginPrompt.

Voce não citou que banco de dados está utilizando. Se for um banco que exija o login, possivelmente você terá que adicionar à propriedade Params (do TDatabase) o nome de usuário (user name) e senha (password) com seus respectivos valores.

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0
jpedro, sobre a propriedade DatabaseName o help diz que ocorrerá uma exceção no caso de você tentar alterar seu conteúdo e a query estiver aberta:
Não, o query não está aberto. Tive o cuidado de verificar.

... talvez você possa adicionar os dois databases ...

Pois, essa foi a solução que arranjei .... mas será que não há outra maneira? obviamente que agora será apenas só para saber mas gostava de saber ....

Voce não citou que banco de dados está utilizando...

Sybase com ligação por odbc... o user e a pass estão configuradas no odbc, tanto que apenas tenho de dar "ENTER" no login prompt do query que ela faz bem a ligação ... só queria que ele não aparecesse.

Um abraço e obrigado Micheus pela sua resposta.

Link para o comentário
Compartilhar em outros sites

  • 0
... talvez você possa adicionar os dois databases ...

Pois, essa foi a solução que arranjei .... mas será que não há outra maneira? obviamente que agora será apenas só para saber mas gostava de saber ....

JPedro, eu acredito que esse seja mesmo o caso, já que parece que você vai trabalhar com um banco de origem e outro de destino (supostamente não são fisicamente os mesmos).

Sybase com ligação por odbc... o user e a pass estão configuradas no odbc, tanto que apenas tenho de dar "ENTER" no login prompt do query que ela faz bem a ligação ... só queria que ele não aparecesse.
Com estas informações já dá para tentar fazer uma avaliação melhor. Se tiver novidades aviso.

Abraços

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,3k
    • Posts
      652,2k
×
×
  • Criar Novo...