VB EM REDE
olá pessoal bom dia....
para conectar o banco de dados uso o seguinte codigo
cnSQL.Open [Ô]Provider=Microsoft.Jet.OLEDB.4.0;Data Source=[Ô] & App.path & [Ô]\informatica.mdb;Persist Security Info=False[Ô]
como me explicaram aqui mesmo neste forum:http://www.vbmania.com.br/pages/index.php?
varModulo=Forum&varMethod=abrir&varID=386598&varPagina=1
mas o problema é que eu to tentando colocar esse aplicativo em rede... e qndo e qndo copilei o programa para a maquina cliente tirei a opção de instalar o banco junto com o aplicativo... toda vez que entra neste aplicativo da erro de conexão com o banco, no servidor esta funcionando normal, mas no cliente da erro de conexão....
onde ta o erro? se pelo oq entendi eh que nesse tipo de conexão o programa procura o banco ....
para conectar o banco de dados uso o seguinte codigo
cnSQL.Open [Ô]Provider=Microsoft.Jet.OLEDB.4.0;Data Source=[Ô] & App.path & [Ô]\informatica.mdb;Persist Security Info=False[Ô]
como me explicaram aqui mesmo neste forum:http://www.vbmania.com.br/pages/index.php?
varModulo=Forum&varMethod=abrir&varID=386598&varPagina=1
mas o problema é que eu to tentando colocar esse aplicativo em rede... e qndo e qndo copilei o programa para a maquina cliente tirei a opção de instalar o banco junto com o aplicativo... toda vez que entra neste aplicativo da erro de conexão com o banco, no servidor esta funcionando normal, mas no cliente da erro de conexão....
onde ta o erro? se pelo oq entendi eh que nesse tipo de conexão o programa procura o banco ....
Citação:onde ta o erro? se pelo oq entendi eh que nesse tipo de conexão o programa procura o banco ....
Não, ela não procura o banco, ela faz é executar o banco que está na mesma pasta que o seu aplicativo, ou seja, o banco deve estar na mesma pasta que o executável.
Entao,
voce deve colocar o caminho de rede,
cria uma unidade virtual,ou seja,compartilhe a pasta aonde esta o banco de dados,e na string de conexao voce chama pela letra da unidade.
Por exemplo eu compartilho a pasta [Ô]Banco[Ô] e mapeio com a letra B o banco de dados se chama BD.MDB entao a string fica:
cnSQL.Open [Ô]Provider=Microsoft.Jet.OLEDB.4.0;Data Source=[Ô]B:\Banco\BD.MDB[Ô];Persist Security Info=False[Ô]
Ou por caminho de rede
cnSQL.Open [Ô]Provider=Microsoft.Jet.OLEDB.4.0;Data Source=[Ô]\\Banco\BD.MDB[Ô];Persist Security Info=False[Ô]
voce deve colocar o caminho de rede,
cria uma unidade virtual,ou seja,compartilhe a pasta aonde esta o banco de dados,e na string de conexao voce chama pela letra da unidade.
Por exemplo eu compartilho a pasta [Ô]Banco[Ô] e mapeio com a letra B o banco de dados se chama BD.MDB entao a string fica:
cnSQL.Open [Ô]Provider=Microsoft.Jet.OLEDB.4.0;Data Source=[Ô]B:\Banco\BD.MDB[Ô];Persist Security Info=False[Ô]
Ou por caminho de rede
cnSQL.Open [Ô]Provider=Microsoft.Jet.OLEDB.4.0;Data Source=[Ô]\\Banco\BD.MDB[Ô];Persist Security Info=False[Ô]
ANABON0106 quando vc usa o app.path ele puxa o banco da pasta local como o Altair comentou
Para vc acessar pela rede, troque esse app.path pelo caminho que vai até o servidor, aconselho vc a criar um config.ini para poder guardar o caminho até o banco de dados
Para criar é fácil, da uma olha no artigo http://www.macoratti.net/arq_ini.htm e utilize apenas a função de ler o arquivo, não precisa gravar nada
Qqer coisa posta ai, ok
Para vc acessar pela rede, troque esse app.path pelo caminho que vai até o servidor, aconselho vc a criar um config.ini para poder guardar o caminho até o banco de dados
Para criar é fácil, da uma olha no artigo http://www.macoratti.net/arq_ini.htm e utilize apenas a função de ler o arquivo, não precisa gravar nada
Qqer coisa posta ai, ok
Lembrando....o banco tem que estar em uma rede, e a pasta em que o mesmo estiver deve estar compartilhada, para que funcione
a forma que o colega PHOENIX postou será a utilizada
onde a pasta banco indicada, deverá estar compartilhada.
a forma que o colega PHOENIX postou será a utilizada
cnSQL.Open [Ô]Provider=Microsoft.Jet.OLEDB.4.0;Data Source=[Ô]\\Banco\BD.MDB[Ô];Persist Security Info=False[Ô]
onde a pasta banco indicada, deverá estar compartilhada.
Tópico encerrado , respostas não são mais permitidas