none
Como Fazer ? OleDbConnection com StringArray ?? RRS feed

  • 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()

    Dim Conexao As String

    For Each Conexao In Todas_Conexoes

    Dim Nova_Conexao As New OleDb.OleDbConnection(Conexao)

          Nova_Conexao.Open()

    Next

    End Sub

     

    End Module

     

     

    Gostaria 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.

     

     

     

     

     

     

    domingo, 11 de maio de 2008 00:08

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

    domingo, 11 de maio de 2008 17:37

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

    domingo, 11 de maio de 2008 17:37
  • 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?

     

    domingo, 11 de maio de 2008 18:01
  • Vai depender de como essa DLL foi implementada... só fazendo um teste para descobrir...


     


    Ricardo Oneda
    http://oneda.mvps.org/blog

    segunda-feira, 12 de maio de 2008 12:04