none
Falha em conexão com BD Access RRS feed

  • Pergunta

  • Bom dia!

    Após quebrar muito a cabeça e tentar resolver este erro, resolvi recorrer ao fórum e verificar se alguém já passou por tal erro.

    Tenho um BD Access que roda a cada 5 minutos, coleta informações de um ORACLE e trabalha esses dados para uma melhor visualização e interpretação.

    Com o tempo as demandas no setor foram surgindo e para visualização do usuário final foram criados:

    - Um arquivo Excel que coleta dados do BD Access através de ADODB connection - para utilização gerencial dos dados (via rede);

    - Um arquivo PowerPoint que coleta dados do BD Access através de ADODB connection - para alarmes exibidos em uma TV (local);

    - Dois arquivos VB.NET que montam e-mails e repassam informações via e-mail (via rede).

    - Outro arquivo access que roda a cada hora para compactar o primeiro (local).

    - Scripts VBS para reiniciar a máquina de tempo em tempo e iniciar os aplicativos (local).

    Com tantos aplicativos rodando e consultando o mesmo arquivo eu estava tendo problemas e, portanto, resolvi criar 4 BDs auxiliares que possuem as tabelas vinculadas ao BD principal e são exclusivos para consulta de cada aplicação.

    Tudo estava resolvido até que um dos aplicativos VB.NET (isso mesmo, apenas um deles) começou a apontar o seguinte erro: 

    "O usuário ‘ Admin’ na máquina ‘ tal’ colocou o banco de dados em um estado que impede de ser aberto ou bloqueado"

    O problema é que eu sou o usuário administrador das máquinas envolvidas, o BD principal não está aberto em modo exclusivo, o BD Auxiliar onde é feita a consulta está fechado e as consultas existentes no VB.NET são apenas de "SELECT", ou seja, não há nenhuma alteração nas tabelas.

    Apenas a aplicação VB.NET aponta esse erro.

    Espero ter sido claro e que possam me ajudar.

    Grato,

    Victor Costa.


    • Editado Victor Costa-ES terça-feira, 19 de janeiro de 2016 16:08 Melhoria
    terça-feira, 19 de janeiro de 2016 16:07

Respostas

  • Marcos, primeiramente obrigado pelo apoio e desculpe ter tomado seu tempo.

    Eu estava encucado com esse erro, pois o meu código tem tratamento de erro, para em caso esse tipo ocorra ele aguarde 1min e repita a operação. Justamente para esses casos de um erro que ainda não consegui identificar o erro.

    O que acontece é que, por mancada minha, uma parte do código onde havia uma conexão com o BD eu não havia colocado dentro do Try...

    O porque do erro eu ainda não descobri, mas pelo menos está tratado.

    • Marcado como Resposta Marcos SJ quinta-feira, 28 de janeiro de 2016 11:20
    quinta-feira, 28 de janeiro de 2016 10:48

Todas as Respostas

  • Olá Victor Costa-ES,

    De fato as informações que encontrei sobre o assunto sugerem que seria necessário verificar se o BD principal não está aberto em modo exclusivo. Mas como você já fez esta verificação, vou continuar pesquisando e ver o que consigo descobrir sobre este erro.

    Atenciosamente


    Marcos Roberto de Souza Junior

    Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    terça-feira, 19 de janeiro de 2016 17:06
  • Olá Marcos,

    O pior é que são duas aplicações em VB.NET praticamente iguais, que fazem consultas em seus respectivos BDs auxiliares e enviam e-mails, entretanto, apenas em uma ocorre esse erro. Nenhum dos BDs está em modo exclusivo.

    Em nenhuma das outras aplicações ocorre tal erro. O excel roda sob demanda do usuário e o PowerPoint roda a cada 5minutos e em NENHUM ocorre este problema.

    Estes diversos fatores estão me fazendo ficar confuso para uma solução.

    terça-feira, 19 de janeiro de 2016 17:27
  • Victor Costa-ES,

    Vi alguém comentar em um outro fórum que podia ser algum arquivo aberto em outra máquina, porém isso não fez muito sentido pra mim então acabei não comentando. Não sei se seria relevante para a situação. De fato é estranho que as duas aplicações sejam idênticas e mesmo assim somente uma delas esteja apresentando erro.


    Marcos Roberto de Souza Junior

    Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.


    • Editado Marcos SJ terça-feira, 19 de janeiro de 2016 17:31
    terça-feira, 19 de janeiro de 2016 17:30
  • Não são exatamente idênticas, mas consultam a base exatamente da mesma forma, apenas SQLs distintas (mas todas são SELECTs puros).
    terça-feira, 19 de janeiro de 2016 17:40
  • Marcos, primeiramente obrigado pelo apoio e desculpe ter tomado seu tempo.

    Eu estava encucado com esse erro, pois o meu código tem tratamento de erro, para em caso esse tipo ocorra ele aguarde 1min e repita a operação. Justamente para esses casos de um erro que ainda não consegui identificar o erro.

    O que acontece é que, por mancada minha, uma parte do código onde havia uma conexão com o BD eu não havia colocado dentro do Try...

    O porque do erro eu ainda não descobri, mas pelo menos está tratado.

    • Marcado como Resposta Marcos SJ quinta-feira, 28 de janeiro de 2016 11:20
    quinta-feira, 28 de janeiro de 2016 10:48
  • Bom dia Victor Costa-ES,

    Que bom que encontrou a solução!

    :)

    Atenciosamente


    Marcos SJ

    Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    quinta-feira, 28 de janeiro de 2016 11:21