CRIAR CONEXÃO ODBC MYSQL E DEPOIS DESTRUIR
Boa noite!!!
Procurei aqui no VBMania e no google, mas nao achei algo que funcionasse.
Existe a possibilidade de criar conexão ODBC (aquela do painel de controle) e depois destruir, tudo via codigo?
E quanto as n-versões do windows?
Att
Luciano
Procurei aqui no VBMania e no google, mas nao achei algo que funcionasse.
Existe a possibilidade de criar conexão ODBC (aquela do painel de controle) e depois destruir, tudo via codigo?
E quanto as n-versões do windows?
Att
Luciano
Se você está usando ADO, basta usar a string de conexão correta. Você cria a conexão, usa os recordsets com ela e pronto.
Boa noite Kerplunk!
Estou testando com dados acoplados.
Att
Luciano
Estou testando com dados acoplados.
Att
Luciano
Dados acoplados... não sei bem o que você quer dizer com isso, mas enfim. O básico do ADO é:
- Abrir conexão
- Usar objeto de conexão aberto para operações com o banco de dados.
Exemplos:
E por aà vai. A string de conexão, você encontra aqui
Mas assim, se você nunca nem se preocupou com isso até agora, implementar ADO em um programa VB6 será uma perda de tempo. Quem sabe não é essa a oportunidade que você precisa para migrar para o .NET?
- Abrir conexão
- Usar objeto de conexão aberto para operações com o banco de dados.
Exemplos:
[ô]Abrindo a conexão
Dim cn As New ADODB.Connection
Set cn = New ADODB.Connection
cn.Open [Ô]Sua string de conexão aqui[Ô]
[ô]consultando dados de uma tabela
Dim rs As New ADODB.Recordset
Set rs = New ADODB.Recordset
rs.Open [Ô]Select * from SUA_TABELA[Ô], cn
[ô]Inserindo dados
cn.Execute [Ô]Insert Into SUA_TABELA (campo1, campo2) values ([ô]valor1[ô], [ô]valor2[ô])[Ô]
E por aà vai. A string de conexão, você encontra aqui
Mas assim, se você nunca nem se preocupou com isso até agora, implementar ADO em um programa VB6 será uma perda de tempo. Quem sabe não é essa a oportunidade que você precisa para migrar para o .NET?
Ola Kerplunk!!!
Desculpe a demora.
Achei isso na net.
criar um arquivo .reg e depois executá-lo com .bat .
Criei o arquivo [Ô]ODBC_REG.reg[Ô] e inclui os seguintes comandos:
______________________________________________________
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\NomeOdbc]
[Ô]Driver[Ô]=[Ô]C:\\WINDOWS\\system32\\sqlsrv32.dll[Ô]
[Ô]Description[Ô]=[Ô]NomeOdbc[Ô]
[Ô]Server[Ô]=[Ô]Servidor[Ô]
[Ô]Database[Ô]=[Ô]BasedeDados[Ô]
[Ô]Trusted_Connection[Ô]=[Ô]Yes[Ô]
______________________________________________________
Não testei, mas pelo que vi, seria isso que procuro, mas sem ser por bat.
O acoplado que digo, são dados dos forms do access.
Preciso fazer um filtro de uma sistema.
Att
Luciano
Desculpe a demora.
Achei isso na net.
criar um arquivo .reg e depois executá-lo com .bat .
Criei o arquivo [Ô]ODBC_REG.reg[Ô] e inclui os seguintes comandos:
______________________________________________________
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\NomeOdbc]
[Ô]Driver[Ô]=[Ô]C:\\WINDOWS\\system32\\sqlsrv32.dll[Ô]
[Ô]Description[Ô]=[Ô]NomeOdbc[Ô]
[Ô]Server[Ô]=[Ô]Servidor[Ô]
[Ô]Database[Ô]=[Ô]BasedeDados[Ô]
[Ô]Trusted_Connection[Ô]=[Ô]Yes[Ô]
______________________________________________________
Não testei, mas pelo que vi, seria isso que procuro, mas sem ser por bat.
O acoplado que digo, são dados dos forms do access.
Preciso fazer um filtro de uma sistema.
Att
Luciano
Você está insistindo em fazer da maneira mais difÃcil e esquisita possÃvel. ADO é super simples, aqui mesmo no VBMania tem uma porrada de exemplos de programas usando MySQL e ADO. Simplifique, é a melhor maneira.
Ola Kerplunk!!!
Estou fazendo conforme orientou.
Achei alguns codigos aqui no Vbmania
Está apresentando a seguinte msg de erro:
Erro em tempo de execução -2147467259 (80004005)
[Microsoft][ODBC Driver Manager] Nome da fonte de dados não encontrado e nenhum driver padrão especificado.
Se vou no Painel de Controle do Windows, e faço o teste de conexão lá, com os mesmo dados que estão, funciona.
Att
Luciano
Estou fazendo conforme orientou.
Achei alguns codigos aqui no Vbmania
Option Explicit
Dim user As String, senha As String, server As String, porta As String, bancodedados As String
Public Con As ADODB.Connection
[ô]Public rs As ADODB.Recordset
Public Sub abrirconexao()
Dim con_str As String
Set Con = New ADODB.Connection
bancodedados = [Ô]bd_dados[Ô]
server = [Ô]localhost[Ô]
[ô]server = [Ô]127.0.0.1[Ô]
porta = [Ô]3306[Ô]
user = [Ô]usuario[Ô]
senha = [Ô]senha[Ô]
con_str = [Ô]DRIVER={MySQL ODBC 5.3 Driver}[Ô] _
& [Ô];server=[Ô] & server _
& [Ô];Port = 3306[Ô] _
& [Ô];database=[Ô] & bancodedados _
& [Ô];User=[Ô] & user _
& [Ô];Password=[Ô] & senha _
& [Ô];option=3;[Ô]
[ô]con_str = [Ô]Driver={MySQL ODBC 5.1 Driver};Server=localhost;Database=bd_lrwsistemas;User=supervisor;Password=wtnfk0ue;Option=3;[Ô]
With Con
.CursorLocation = adUseClient
.ConnectionString = con_str
.Open con_str
End With
End Sub
Está apresentando a seguinte msg de erro:
Erro em tempo de execução -2147467259 (80004005)
[Microsoft][ODBC Driver Manager] Nome da fonte de dados não encontrado e nenhum driver padrão especificado.
Se vou no Painel de Controle do Windows, e faço o teste de conexão lá, com os mesmo dados que estão, funciona.
Att
Luciano
Boa noite!!!
Então, eu instalei o mysql completo e o xampp também, ja tinha notado, que só para de dar erro quando starto o mysql no xampp, se para o serviço, da erro (com certeza).
Desinstalei e instalei o driver mais atual, conforme você me orientou.
Notei MysqlNotifier está:
Localhost (online)
Mysql57 - Stardpending (a opção de start está desabilitade, stop habilitada e restart tambem habilitada)
Removi completamente o mysql, instalei novamente, mas continua a mesma coisa.
Fugindo um pouco do assunto:
Apenas para fazer um teste e aprender um poukim, criei uma conta em:
https://www.000webhost.com/
criei um bd e importo o eskema que tenho em minha maquina para la, da o erro abaixo:
Error
Static analysis:
1 errors were found during analysis.
The name of the entity was expected. (near [Ô]SCHEMA[Ô] at position 7)
SQL query:
CREATE SCHEMA IF NOT EXISTS 'bd_lrwsistemas' DEFAULT CHARACTER SET utf8
MySQL said: Documentation
#1044 - Access denied for user [ô]id251509_root[ô]@[ô]%[ô] to database [ô]bd_lrwsistemas[ô]
E fazendo a mesma coisa local (127.0.0.1), está ok.
Que dureza.
Att
Luciano
Então, eu instalei o mysql completo e o xampp também, ja tinha notado, que só para de dar erro quando starto o mysql no xampp, se para o serviço, da erro (com certeza).
Desinstalei e instalei o driver mais atual, conforme você me orientou.
Notei MysqlNotifier está:
Localhost (online)
Mysql57 - Stardpending (a opção de start está desabilitade, stop habilitada e restart tambem habilitada)
Removi completamente o mysql, instalei novamente, mas continua a mesma coisa.
Fugindo um pouco do assunto:
Apenas para fazer um teste e aprender um poukim, criei uma conta em:
https://www.000webhost.com/
criei um bd e importo o eskema que tenho em minha maquina para la, da o erro abaixo:
Error
Static analysis:
1 errors were found during analysis.
The name of the entity was expected. (near [Ô]SCHEMA[Ô] at position 7)
SQL query:
CREATE SCHEMA IF NOT EXISTS 'bd_lrwsistemas' DEFAULT CHARACTER SET utf8
MySQL said: Documentation
#1044 - Access denied for user [ô]id251509_root[ô]@[ô]%[ô] to database [ô]bd_lrwsistemas[ô]
E fazendo a mesma coisa local (127.0.0.1), está ok.
Que dureza.
Att
Luciano
Leia bem a mensagem de erro e tente entender o que ela diz:
[txt-color=#0000f0]Access denied for user [ô]id251509_root[ô]@[ô]%[ô] to database [ô]bd_lrwsistemas[ô][/txt-color]
[txt-color=#0000f0]Access denied for user [ô]id251509_root[ô]@[ô]%[ô] to database [ô]bd_lrwsistemas[ô][/txt-color]
Vou tentar explicar como funciona a coisa:
Você tem o servidor MySQL, que é um serviço que roda em alguma máquina, que chamamos comumente de servidor. Com o serviço rodando, você precisa liberar a porta 3306(que é a porta padrão para conexões do MySQL), se quiser que outras máquinas possam se conectar no seu servidor. Essa conexão, é feita através do driver ODBC em cada estação. Você configura a string de conexão, com o caminho e porta da máquina em que o serviço está instalado. O notifier, aquele iconezinho, simplesmente mostra o status do serviço, se está rodando ou não. O que interessa à você é o localhost, que deve estar online. O que está aparecendo a mais, provavelmente é coisa do Xampp.
O Xampp é totalmente desnecessário, ele instala mais do que você precisa(digo, instala coisas além do MySQL).
Você tem o servidor MySQL, que é um serviço que roda em alguma máquina, que chamamos comumente de servidor. Com o serviço rodando, você precisa liberar a porta 3306(que é a porta padrão para conexões do MySQL), se quiser que outras máquinas possam se conectar no seu servidor. Essa conexão, é feita através do driver ODBC em cada estação. Você configura a string de conexão, com o caminho e porta da máquina em que o serviço está instalado. O notifier, aquele iconezinho, simplesmente mostra o status do serviço, se está rodando ou não. O que interessa à você é o localhost, que deve estar online. O que está aparecendo a mais, provavelmente é coisa do Xampp.
O Xampp é totalmente desnecessário, ele instala mais do que você precisa(digo, instala coisas além do MySQL).
Tópico encerrado , respostas não são mais permitidas