MySQL: conexão com MariaDB em rede

Forum sobre SQL.

Moderador: Moderadores

Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

MySQL: conexão com MariaDB em rede

Mensagem por JoséQuintas »

Sim, mas se não avisar, ele pode pensar que basta gerar o exe.
E o principal é saber se vão permitir, ou se ele vai saber contornar o problema. Até mesmo pra atualizar o aplicativo vai precisar permissão.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
cjp
Usuário Nível 6
Usuário Nível 6
Mensagens: 1563
Registrado em: 19 Nov 2010 22:29
Localização: paraná
Contato:

MySQL: conexão com MariaDB em rede

Mensagem por cjp »

Se for necessário fazer mudanças na forma de programar, estou disposto, mas, de preferência, gostaria de continuar usando o ADO, pois acabei de mudar tudo pro ADO e me adaptei bem com ele.
Mas reitero que não é permitido instalar absolutamente nada, nada mesmo. Então, se nessa forma que foi indicada precisar instalar alguma coisa (qualquer coisa, por mais simples ou por mais oficial que seja), esqueça. Absolutamente nada é permitido.
Por isso, reitero, preciso de uma forma de acessar que não dependa de nenhuma instalação, nenhuma mesmo.
Minha ideia inicial seria acessar o ODBC pelo computador que já tem ele instalado e está na rede local. Mas, se isso não for possível, aceito qualquer sugestão para conseguir usar meu programa nesse computador sem precisar instalar nada. Desde já agradeço qualquer solução.
Inacio de Carvalho Neto
ivanil
Usuário Nível 3
Usuário Nível 3
Mensagens: 166
Registrado em: 11 Set 2004 15:13
Localização: Florianópolis/SC

MySQL: conexão com MariaDB em rede

Mensagem por ivanil »

Se for necessário fazer mudanças na forma de programar, estou disposto, mas, de preferência, gostaria de continuar usando o ADO, pois acabei de mudar tudo pro ADO e me adaptei bem com ele.
O ADO é nativo do SO e vai procurar os drivers automaticamente, então você não conseguira usá-lo no contexto que apresentou.
Inacio de Carvalho Neto escreveu:
Mas reitero que não é permitido instalar absolutamente nada, nada mesmo. Então, se nessa forma que foi indicada precisar instalar alguma coisa (qualquer coisa, por mais simples ou por mais oficial que seja), esqueça. Absolutamente nada é permitido.
Por isso, reitero, preciso de uma forma de acessar que não dependa de nenhuma instalação, nenhuma mesmo.
Usando a Classe, seu aplicativo enviara as instruções diretamente ao servidor; única forma que vejo que pode resolver sua questão.
Inacio de Carvalho Neto escreveu:
Minha ideia inicial seria acessar o ODBC pelo computador que já tem ele instalado e está na rede local. Mas, se isso não for possível, ..
Quando você se aprofundar vai ver que isso é totalmente ilógico, uma vez que a aplicação procura pelos drivers "in self"
Inacio de Carvalho Neto escreveu:
aceito qualquer sugestão para conseguir usar meu programa nesse computador sem precisar instalar nada.
Pegue um dos exemplos e siga em frente nos testes.
JoséQuintas escreveu:
E o principal é saber se vão permitir, ou se ele vai saber contornar o problema. Até mesmo pra atualizar o aplicativo vai precisar permissão.
Acredito que o sistema dele esteja fora do grupo de aplicação gerenciados pelo administrador, não faria sentido estar lá, pelo contexto apresentado.

Inácio,
Talvez você volte a fazer perguntas, então de antemão responda:
Usa Borland ou Mingw?
Alguma biblioteca gráfica?
Seu app final será 32/64?
harbour/xharbour qual versão?
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

MySQL: conexão com MariaDB em rede

Mensagem por JoséQuintas »

ivanil escreveu:Usando a Classe, seu aplicativo enviara as instruções diretamente ao servidor; única forma que vejo que pode resolver sua questão.
E ele vai instalar a DLL do MySQL como?
Vai só perder tempo pra gerar harbour, fazer alguma alteração, pra depois não poder usar.

Muitos confundem, acham que gerar a lib pra MySQL a partir da DLL não vai precisar da DLL, mas é justamente o contrário, sem DLL o programa nem sequer vai carregar.

mysql.dll -> utilitário gera LIB INTERMEDIÁRIA -> EXE é compilado com essa LIB que É DEPENDENTE DA DLL.
O EXE NÃO VAI FUNCIONAR sem exatamente a mesma DLL.

Se não depende da DLL, então diga como, todo mundo vai querer usar dessa forma, até eu.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

MySQL: conexão com MariaDB em rede

Mensagem por JoséQuintas »

tmysql.png
Depende da DLL sim.
Sem DLL o EXE nem vai funcionar.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

MySQL: conexão com MariaDB em rede

Mensagem por JoséQuintas »

libcurl, openssl, tmysql, etc.
TODAS estas dependem de DLL.
Por isso não uso nenhuma.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

MySQL: conexão com MariaDB em rede

Mensagem por JoséQuintas »

Acho que você leu muita propaganda de Harbour/XHarbour dizendo que era tudo nativo, mas nunca foi.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
cjp
Usuário Nível 6
Usuário Nível 6
Mensagens: 1563
Registrado em: 19 Nov 2010 22:29
Localização: paraná
Contato:

MySQL: conexão com MariaDB em rede

Mensagem por cjp »

Respondendo tuas perguntas:

Usa Borland ou Mingw? Não
Alguma biblioteca gráfica? Não
Seu app final será 32/64? uso agora 32, mas poderia fazer também com 64
harbour/xharbour qual versão? harbour 32

Fiz um teste com o exemplo do contrib, mas ainda não entendi muito bem. Dá test created successfully. E de fato criou a tabela test no meu banco de dados.
Mas depois dá o seguinte erro: Argument error: MYSQL_QUERY, nesta linha (que eu adaptei para a minha tabela, mas devo ter feito algo errado:
oQuery2 := oServer:Query( "SELECT * from test where cartao='" + wn->cartao + "' and destinatar='" + wn->destinatar + "'" )

Ainda não estudei o exemplo a fundo. Mas queria primeiro saber se o Quintas tem razão: se será necessário instalar alguma coisa na máquina em questão. Porque, se for necessário, voltamos à estaca zero.

Reitero que preciso de uma forma de meu programa rodar sem que seja necessário instalar nada na máquina.
Inacio de Carvalho Neto
ivanil
Usuário Nível 3
Usuário Nível 3
Mensagens: 166
Registrado em: 11 Set 2004 15:13
Localização: Florianópolis/SC

MySQL: conexão com MariaDB em rede

Mensagem por ivanil »

Não.
Felizmente o Quintas está enganado.
Você precisa apenas deixar a dll junto do seu aplicativo.
Uma dúvida, se não usa nem borland nem mingw, então o que está usando?
ivanil
Usuário Nível 3
Usuário Nível 3
Mensagens: 166
Registrado em: 11 Set 2004 15:13
Localização: Florianópolis/SC

MySQL: conexão com MariaDB em rede

Mensagem por ivanil »

Nota
Se vc já criou uma tabela pelo exemplo, então já se comunicou com o servidor, o resto agora é basicamente sql.
Obs. Olhe os últimos fechamento das aspas
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

MySQL: conexão com MariaDB em rede

Mensagem por JoséQuintas »

ivanil escreveu:Felizmente o Quintas está enganado.
Você precisa apenas deixar a dll junto do seu aplicativo.
não precisa de DLL, só precisa da DLL kkkk
E tá de volta ao problema inicial kkkk
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
ivanil
Usuário Nível 3
Usuário Nível 3
Mensagens: 166
Registrado em: 11 Set 2004 15:13
Localização: Florianópolis/SC

MySQL: conexão com MariaDB em rede

Mensagem por ivanil »

Bom dia,
Mas Quintas, na mensagem de ontem as 16:02 eu deixei claro que precisa da dll.
Não creio que o problema voltou ao estágio inicial.
O problema está em precisar de um administrador, e neste caso ele nao precisa. Não existe o processo de instalação, basta colocar a dll junto do aplicativo.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

MySQL: conexão com MariaDB em rede

Mensagem por JoséQuintas »

Tudo bem, vou só assistir.

Enquanto isso.... contar um segredo...
É tão segredo, que nem o o Inácio sabe....
Nem sempre o Inácio usou ADO.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
cjp
Usuário Nível 6
Usuário Nível 6
Mensagens: 1563
Registrado em: 19 Nov 2010 22:29
Localização: paraná
Contato:

MySQL: conexão com MariaDB em rede

Mensagem por cjp »

Bom dia,
Mas Quintas, na mensagem de ontem as 16:02 eu deixei claro que precisa da dll.
Não creio que o problema voltou ao estágio inicial.
O problema está em precisar de um administrador, e neste caso ele nao precisa. Não existe o processo de instalação, basta colocar a dll junto do aplicativo.
Pelo que eu entendi, só preciso copiar o arquivo DLL para a máquina-problema, não precisarei instalar nada. Se for isso, sim, resolve meu problema.



Nota
Se vc já criou uma tabela pelo exemplo, então já se comunicou com o servidor, o resto agora é basicamente sql.
Sim, parece que está comunicando sim. Mas testei aqui na minha máquina, que tem ODBC instalado. Ainda não pude testar na máquina-problema.

Obs. Olhe os últimos fechamento das aspas
Olhei e não vi erro. Posso estar enganado, mas acho que está certo. Veja:

Código: Selecionar todos

      oQuery2 := oServer:Query( "SELECT * from test where cartao='" + wn->cartao + "' and destinatar='" + wn->destinatar + "'" )
No final, abri aspas normais ("), fechei as aspas simples (') e depois fechei as aspas normais ("). Está errado?

Enquanto isso.... contar um segredo...
É tão segredo, que nem o o Inácio sabe....
Nem sempre o Inácio usou ADO.
Sim, comecei usando MySQL em 2014, na época nem sabia o que era ADO. Comecei com um exemplo postado pelo pctoledo aqui no grupo. Faz uns 5 anos que comecei a migrar pro ADO, por recomendação do Quintas. Deu trabalho, mas migrei tudo, e vi muitas vantagens.
Inacio de Carvalho Neto
ivanil
Usuário Nível 3
Usuário Nível 3
Mensagens: 166
Registrado em: 11 Set 2004 15:13
Localização: Florianópolis/SC

MySQL: conexão com MariaDB em rede

Mensagem por ivanil »

Mensagem por cjp » 22 Fev 2023 10:23
No final, abri aspas normais ("), fechei as aspas simples (') e depois fechei as aspas normais ("). Está errado?
Eu havia observado pelo celular, e la o texto foi juntado, a princípio a sintaxe esta correta, mas você pode capturar o erro, o motor do mysql devolve o erro encontrado.
Sim, comecei usando MySQL em 2014, na época nem sabia o que era ADO. Comecei com um exemplo postado pelo pctoledo aqui no grupo. Faz uns 5 anos que comecei a migrar pro ADO, por recomendação do Quintas. Deu trabalho, mas migrei tudo, e vi muitas vantagens.
Eu so uso o ADO por conta da portabilidade; como trabalho com consultoria não posso ficar preso num único banco.

Mas antes de avançar muito, você já está num estágio interessante; teste na máquina problema, pois tem a questão das portas do Firewall, e este, não tem jeito, se o firewall estiver bloqueando tem que desbloquear e somente o administrador pode criar regra.
Responder