Usuário com melhor resposta
Como Fazer ? OleDbConnection com StringArray ??

Pergunta
-
Pra ser mais simples e explícito:
Consegui criar duas conexões com banco de dados diferentes através de uma rotina mas as conexões simplesmente se fecham sozinhas após uns 2 segundos mais ou menos sem nenhum comando Por que?
Imports
System.Data.OleDb__________________________________________________________________________________________
Module Module1
Public
Todas_Conexoes() As String = { _ "Provider = Microsoft.Jet.OLEDB.4.0;Data Source =C:\BancoA.mdb;", _ "Provider = Microsoft.jet.OleDB.4.0;Data Source =C:\BancoB.mdb;" }__________________________________________________________________________________________
Public
Sub Abre_Conexoes()For Each Conexao In Todas_Conexoes
Dim Nova_Conexao As New OleDb.OleDbConnection(Conexao)
Nova_Conexao.Open()
Next
End SubGostaria de poder manter essas conexões abertas e ativas para agilizar pesquisas e o manuseio com as informações sem precisar ficar abrindo e fechando conexão quando precisar.
Respostas
-
Você quer abrir a conexão quando a aplicação for executada e mantê-la aberta enquanto a aplicação estiver rodando? Isso não é uma boa prática, pois conexão com banco de dados é um recurso que outras aplicações/outros usários podem querer compartilhar... o ideal é abrir a conexão no momento em que for usá-la e fechá-la assim que não for mais necessário.
Ricardo Oneda
http://oneda.mvps.org/blog
Todas as Respostas
-
Você quer abrir a conexão quando a aplicação for executada e mantê-la aberta enquanto a aplicação estiver rodando? Isso não é uma boa prática, pois conexão com banco de dados é um recurso que outras aplicações/outros usários podem querer compartilhar... o ideal é abrir a conexão no momento em que for usá-la e fechá-la assim que não for mais necessário.
Ricardo Oneda
http://oneda.mvps.org/blog -
Obrigado pela Atenção Ricardo!
Mas indo um pouco mais fundo no assunto :
1) O meu maior problema é que tenho uma aplicação pronta que precisa rodar em uma máquina com windows 98 e apenas 16 Mb de memória e o cliente não está nem um pouco interessado em fazer um upgrade na ou de máquina, e em algumas rotinas com o banco a máquina simplesmente não executa a rotina e gera um erro dizendo que a memória não pode ser Read!!!. Há um atraso da aplicação com o banco no momento em que a aplicação tenta abrir a conexão.
Pode ser um defeito da máquina ou melhor dizendo "o defeito é a máquina" mas já fiz os testes e se as conexões ficarem abertas não é gerado o erro e a aplicação roda mais leve...
2) Há algum tempo que desenvolvi uma DLL específica para tratar rotinas de conexão com banco de dados OleDB para facilitar sempre que precisar criar uma conexão sem precisar ficar redeclarando o código .
2-a) O uso dessa DLL ajudaria ou não se tratando desse artefato que acabeie de mencionar com 16 Mb que insiste em testar a minha paciência e meus estudos?
-
Vai depender de como essa DLL foi implementada... só fazendo um teste para descobrir...
Ricardo Oneda
http://oneda.mvps.org/blog