Página 1 de 2
ADO e ODBC
Enviado: 18 Mar 2019 09:26
por janio
Pessoal,
Pra usar ADO precisa instalar o Driver ODBC na maquina local tmb? Ou so no Servidor?
Uso Mediator via ODBC tbm e nesse caso instalo o ODBC apenas no servidor
Fazendo uns testes com ADO na minha maquina local e servidora tava tudo ok. Mas quando tentei por uma maquina da rede deu erro.
ADO e ODBC
Enviado: 18 Mar 2019 09:58
por Mario Mesquita
Bom dia!
Excelente questão. Estou estudando migrar de DBFs para SQL e mesmo lendo os tópicos, ficam dúvidas sobre o que usar.
Li algo sobre "acesso nativo" para o MySql. Isso quer dizer que não precisa usar esses utilitários?
Sds,
Mario.
ADO e ODBC
Enviado: 18 Mar 2019 16:42
por MSDN
Mario, o Harbour e o xHarbour tem desde os primórdios uma classe para acessar diretamente o MySQL sem driver ODBC, está na pasta :
C:\Harbour\contrib\hbmysql
* nesse caso para o Harbour, mas no xHarbour só muda o nome da última pasta
ADO e ODBC
Enviado: 18 Mar 2019 19:00
por janio
Mario, o Harbour e o xHarbour tem desde os primórdios uma classe para acessar diretamente o MySQL sem driver ODBC, está na pasta :
C:\Harbour\contrib\hbmysql
Eh... desisti do ADO. Ter que instalar o ODBC em cada estação é um inconveniente gigante.
Preferi usar essa classe
hbmysql que depende apenas de enviar junto com o exe uma dll
ADO e ODBC
Enviado: 18 Mar 2019 19:52
por Mario Mesquita
Boa noite.
Que legal! Um amigo está me recomendando o MS-SQL mas esses recursos para o MySql parecem que facilitam o uso dessa BD. O que não agrada é aquela pasta cheia de arquivos como se fossem os dbfs. Mas se é seguro, robusto e funcional, com suporte e a galera usando massivamente compartilhando experiências, é um ponto enorme a favor.
Sinceramente, minhas exigências são muito bem atendidas pelos DBFs, mas sinto que é hora de dominar esse conhecimento, pois sem saber e usar SQL vc parece meio analfabeto em base de dados.
Qual a versão do MySql recomendada? O Maria DB é suportado por essa lib, será?
Desde já, obrigado pelas dicas.
Sds,
Mario.
ADO e ODBC
Enviado: 18 Mar 2019 20:48
por JoséQuintas
janio escreveu:Eh... desisti do ADO. Ter que instalar o ODBC em cada estação é um inconveniente gigante.
Preferi usar essa classe hbmysql que depende apenas de enviar junto com o exe uma dll
De qualquer jeito é algo adicional, com a diferença de que o ADO não precisa de versão de Harbour específica.
Mas o ADO não é só pra MySQL: Planilhas Excel (sem precisar do Excel), SQL Server, DBF via comando SQL, e outros.
Poderia não usar o instalador do ODBC, mandar DLL junto e apenas registrar, mas o instalador já abre pro administrador confirmar, quando há rede com domínio.
Convém só relembrar: instalou e usou, achou fácil, não precisou ficar procurando como gerar o Harbour com acesso a MySQL.
O chato mesmo foi a Oracle ter usado o Microsoft C++, que exige instalação de run-time. Acontece o mesmo quando se usa MSVC no Harbour.
Melhor/pior.... vai do gosto de cada um.
Um bom começo é usar DBF por ADO... assim usa comandos SQL no banco que já conhece, antes de partir pra outro.
ADO e ODBC
Enviado: 18 Mar 2019 20:53
por JoséQuintas
Esqueci de dizer:
Outra forma é criar um instalador.
Pode incluir lá as DLLs de nota fiscal eletrônica, ODBC MySQL, ODBC Excel, e até o próprio aplicativo.
ADO e ODBC
Enviado: 18 Mar 2019 21:17
por fladimir
Quintas...
Como seria ADO pra Excel sem Excel instalado tem algum exemplo?
Como seria "poderia não usar o instalador do ODBC, mandar DLL junto e apenas registrar"
ADO e ODBC
Enviado: 19 Mar 2019 10:11
por JoséQuintas
fladimir escreveu:Como seria ADO pra Excel sem Excel instalado tem algum exemplo?
É só lembrar: ADO é pra qualquer coisa, isso inclui Excel, no geral só altera a string de conexão.
fladimir escreveu:Como seria "poderia não usar o instalador do ODBC, mandar DLL junto e apenas registrar"
O que o instalador faz é copiar arquivo(s) e registrar DLL, então nada impede de fazer isso sem instalador.
Só que os nomes variam conforme o odbc, mais prático usar o instalador, que já pede autorizador do administrador, se precisar.
Um instalador pode conter vários programas de instalação, mesmo que fique grandinho, pode conter tudo.
E o instalador pode ser reconhecido mais fácil por programas antivírus, o que evita mais problemas.
ADO e ODBC
Enviado: 19 Mar 2019 11:14
por fladimir
Entendi
obrigado.
ADO e ODBC
Enviado: 19 Mar 2019 20:37
por Mario Mesquita
Boa noite, amigos.
Pela minha inexperiência, não consigo conectar com a base MySql, mesmo usando o que foi recomendado. Na verdade, usei o xAmpp pra isso, mas ao desliga-lo
a conexão não acontece.
O que precisa ser feito? ADO? ODBC? Desculpe a burrice, rs Abaixo a rotina de conexão:
Código: Selecionar todos
FUNCTION Conecta_SQL()
LOCAL xHost := "127.0.0.1", xUser := "root" , xPass := ""
oServer := TMySqlServer():New( xHost, xUser, xPass )
IF ( OServer:NetErr() )
MSGSTOP("Erro ao conectar: " + oServer:Error() )
ELSE
MSGINFO("BD Conectada")
ENDIF
RETURN NIL
Saudações,
Mario.
ADO e ODBC
Enviado: 19 Mar 2019 21:44
por fladimir
Ta correto é assim q uso pra trabalhar com MySQL
Faz um teste por fora usando tipo o HEIDISQL etc se conecta por lá tem q conectar com a função q vc mostrou
Se vc esta usando as mesmas variáveis de host, usuário, senha e porta e no HeidiSQL deu certo na tua rotina vai dar tb.
ADO e ODBC
Enviado: 20 Mar 2019 10:47
por Mario Mesquita
Bom dia!
Fladimir, obrigado pela dica. Imagino que vá funcionar, mas no cliente não é como se deve ser feito, né? No caso, teria que ser algo configurado, se ADO, ODBC, essas ferramentas, não é isso?
É essa coisa que queria entender pra testar em rede, enfim aprender como prepara na rede do cliente. Nesse ponto, os DBFs são sopinha no mel, rs.
Aliás, qual a melhor versão do MySql pra se usar? Qualquer uma, a última?
Saudações,
Mario.
ADO e ODBC
Enviado: 20 Mar 2019 16:02
por fladimir
Eu uso a 5.1
ADO e ODBC
Enviado: 20 Mar 2019 17:25
por janio
Eu uso a 5.1
Me too
É essa coisa que queria entender pra testar em rede, enfim aprender como prepara na rede do cliente. Nesse ponto, os DBFs são sopinha no mel, rs.
Amigao, pra usar mysql nao tem segredo. Eh apontar o teu sistema pra o ip do servidor (onde o mysql ta rodando) e usar. A única observação digna de menção é criar os usuários com as configurações corretas no mysql. Pra acessar do proprio servidor eh um tipo de usuario, pra acessar de uma estação eh outro tipo de usuário. So isso