CONECTAR COM BANCO DE DADOS PARA TESTE
                    Bom dia pessoal.
Tenho o arquivo executável e o banco de dados dentro da pasta Debug do projeto.
Queria abrir outra pasta dentro do Debug chamada Teste : c\........\Debug\Teste
Dentro da pasta c\.......\Debug\Teste queria copiar o banco de dados, para ir realizando testes sem afetar o banco oficial.
AÃ, é mais ou menos assim: digitaria usuário: TESTE e aà o programa entende que a conexão vai ser com o arquivo da pasta \Teste, se for outro usuário, se conecta normalmente com o banco oficial.
Hoje eu tenho um módulo (INICIALIZACAO) onde eu tenho a variável pública conexão:
Então, teria que ser algo semelhante a:
Alguém me dá uma luz, por favor?
                
            Tenho o arquivo executável e o banco de dados dentro da pasta Debug do projeto.
Queria abrir outra pasta dentro do Debug chamada Teste : c\........\Debug\Teste
Dentro da pasta c\.......\Debug\Teste queria copiar o banco de dados, para ir realizando testes sem afetar o banco oficial.
AÃ, é mais ou menos assim: digitaria usuário: TESTE e aà o programa entende que a conexão vai ser com o arquivo da pasta \Teste, se for outro usuário, se conecta normalmente com o banco oficial.
Hoje eu tenho um módulo (INICIALIZACAO) onde eu tenho a variável pública conexão:
Public conexao As New System.Data.OleDb.OleDbConnection([Ô]Provider=Microsoft.Jet.oledb.4.0;Data Source=[Ô] & Application.StartupPath & [Ô]\Banco_Dados.mdb[Ô])Então, teria que ser algo semelhante a:
If _usuario = [Ô]TESTE[Ô] Then
    conexao = New OleDb.OleDbConnection([Ô]Provider=Microsoft.Jet.oledb.4.0;Data Source=[Ô] & Application.StartupPath & [Ô]\Teste\Banco_Dados.mdb[Ô])
Else
    conexao = New OleDb.OleDbConnection([Ô]Provider=Microsoft.Jet.oledb.4.0;Data Source=[Ô] & Application.StartupPath & [Ô]\Banco_Dados.mdb[Ô])
End IfAlguém me dá uma luz, por favor?
                    Tu tá no caminho certo. A lógica é essa mesmo.
Creio q seu módulo seja uma classe. Sendo uma classe você pode instanciar ela. Seria legal eu ver seu módulo pra te dizer o que poderia ser feito. Mas baseie-se por essa classe de conexão abaixo:
Repare que o método new é o construtor da classe. E toda vez que vc for instancia-la de oura classe, deve passar pro parametro _usuario o usuário logado. Tipo assim:
se for TESTE
Dim conexao As New Conexao([Ô]TESTE[Ô])
se não for TESTE
Dim conexao as New Conexao([Ô][Ô])
Repare que quando não for teste, vc deve colocar apenas aspas duplas, já quando for TESTE, vc deve colocar uma String, independente se for uma variável criada ou se for entre aspas como no exemplo acima
O conceito de método construtor, era mais / menos isso que queria te passar
Uma ultima dica que quero te passar é não deixar a sua variável de conexao Pública e sim Privada. A variavel que coloquei é [Ô]banco[Ô] repare que ela é private
Espero ter te ajudado
                
            Creio q seu módulo seja uma classe. Sendo uma classe você pode instanciar ela. Seria legal eu ver seu módulo pra te dizer o que poderia ser feito. Mas baseie-se por essa classe de conexão abaixo:
Imports System
Imports System.Data
Imports System.Data.OleDb
Imports System.Windows.Forms
Public Class Conexao
 
   Private banco As String
   Public Sub New(ByVal _usuario AS String)
        If _usuario = [Ô]TESTE[Ô] Then
           banco = [Ô]Provider=Microsoft.Jet.oledb.4.0;Data Source=[Ô] & Application.StartupPath & [Ô]\Teste\Banco_Dados.mdb[Ô]
       Else
           banco = [Ô]Provider=Microsoft.Jet.oledb.4.0;Data Source=[Ô] & Application.StartupPath & [Ô]\Banco_Dados.mdb[Ô]
       End If
   End Sub
   Public Function Pesquisar(ByVal SQL As String) As DataTable
        Dim dados As New DataTable
        Try
            dados.Rows.Clear()
            Dim conectar As New OleDbConnection(Banco)
            conectar.Open()
            Dim comando As New OleDbCommand(SQL, conectar)
            Dim adapter As New OleDbDataAdapter(comando)
            adapter.Fill(dados)
            conectar.Close()
        Catch ex As Exception
            MessageBox.Show([Ô]Erro de Comando SQL: [Ô] & ex.Message)
        End Try
        Return dados
    End Function
    Public Sub CRUD(ByVal SQL As String)
        Try
            Dim conectar As New OleDbConnection(Banco)
            conectar.Open()
            Dim comando As New OleDbCommand(SQL, conectar)
            comando.ExecuteNonQuery()
            conectar.Close()
        Catch ex As Exception
            MessageBox.Show([Ô]Erro de Comando SQL: [Ô] & ex.Message)
        End Try
    End Sub
End ClassRepare que o método new é o construtor da classe. E toda vez que vc for instancia-la de oura classe, deve passar pro parametro _usuario o usuário logado. Tipo assim:
se for TESTE
Dim conexao As New Conexao([Ô]TESTE[Ô])
se não for TESTE
Dim conexao as New Conexao([Ô][Ô])
Repare que quando não for teste, vc deve colocar apenas aspas duplas, já quando for TESTE, vc deve colocar uma String, independente se for uma variável criada ou se for entre aspas como no exemplo acima
O conceito de método construtor, era mais / menos isso que queria te passar
Uma ultima dica que quero te passar é não deixar a sua variável de conexao Pública e sim Privada. A variavel que coloquei é [Ô]banco[Ô] repare que ela é private
Espero ter te ajudado

                    Valeu Acciolly, consegui, obrigado pelas dicas.
Um abraço.
            Um abraço.
                        Tópico encerrado , respostas não são mais permitidas