Clipper On Line • Ver Tópico - Pedido de ajuda simples no MySql

Pedido de ajuda simples no MySql

Discussão sobre SQL

Moderador: Moderadores

 

Pedido de ajuda simples no MySql

Mensagempor Toledo » 04 Mai 2014 18:19

JoséQuintas escreveu:É bom deixar tudo anotado pra quando for fazer novamente.

Amigos, vejam este tutorial:

Instalando e configurando o MySQL para Harbour

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar de usuário

Toledo
Administrador

Administrador
 
Mensagens: 3038
Data de registro: 22 Jul 2003 18:39
Cidade/Estado: Araçatuba - SP
Curtiu: 263 vezes
Mens.Curtidas: 258 vezes

Pedido de ajuda simples no MySql

Mensagempor cjp » 24 Mai 2014 00:00

Amigos,

Preciso da ajuda de vocês para dar prosseguimento no uso do MySQL.

Fiz a instalação e configuração do MySQL, seguindo o excelente tutorial que o Toledo postou. Funcionou tudo perfeitamente.

Só que eu preciso usar o MySQL em um banco de dados virtual, para que a base fique acessível a computadores distantes, que não estão ligados em rede.

Seguindo instrução do Toledo, contratei o serviço próprio do provedor com essa finalidade. Desde então, estou tentando usar, tanto seguindo as instruções do Toledo no citado tutorial, como também seguindo as instruções do próprio provedor.

Depois de várias informações desencontradas, agora o provedor me informa que o serviço contratado não funciona com a forma de conectar ensinada pelo Toledo no tutorial, por se tratar de um banco SQL Server 2008. Então, eu teria que instalar o SQL Server 2008 Management.

Já até instalei o SQL Server 2008 Management, mas também não consegui conexão com ele.

Pergunto aos colegas:

1) É mais fácil/melhor eu aprender a usar o SQL Server 2008 Management ou procurar outro provedor que forneça o serviço correspondente ao ensinado pelo Toledo no tutorial?

2) No primeiro caso, ele rodaria também em Harbour? E PHP?

3) No segundo caso, vocês poderiam me indicar exatamente qual o serviço que eu devo contratar do provedor para que funcione realmente com o modelo que o Toledo ensinou?
Inacio de Carvalho Neto
cjp
Usuário Nível 6

Usuário Nível 6
 
Mensagens: 1527
Data de registro: 19 Nov 2010 21:29
Cidade/Estado: paraná
Curtiu: 10 vezes
Mens.Curtidas: 20 vezes

Pedido de ajuda simples no MySql

Mensagempor alxsts » 24 Mai 2014 00:35

Olá!

Independentemente do gerenciador de banco de dados relacional que você contratou, o provedor tem que te fornecer o endereço IP e a senha para você conseguir se conectar. Com esstas informações em mãos, conectar no SQL Server é até mais fácil, não precisando nem instalar software de conexão ODBC pois isto já vem com o Windows.

No tópico Fazendo Backup no Banco de Dados MYSQL postei um exemplo de como conectar no SQL Server via ADO e fazer algumas operações.

Veja o trecho onde a conexão é feita:
#include "ado.ch"
#include "hbcompat.ch"

REQUEST HB_CODEPAGE_PTISO

STATIC oCn As Object

INIT PROCEDURE AppInit()

   LOCAL oErr As Object
   LOCAL cCnString As Character

   RELEASE GetList
   HB_CDPSELECT("PTISO")

   Set( _SET_DATEFORMAT, "dd/mm/yyyy" )
   SetMode(50,150)
   SetBlink( .F. )
   SetColor( "W+/N, N/W*" )

   CLS

   Try
      cCnString := "Provider=SQLNCLI10;Server=(Local);Database=Harbour;Uid=sa;Pwd=xyz;"

      oCn := win_OleCreateObject("ADODB.Connection")

      oCn:ConnectionString := cCnString
      oCn:CursorLocation := adUseClient
      oCn:Mode := adModeReadWrite

   Catch oErr
      Alert( "Não foi possível conectar ao banco de dados.;Erro: " + oErr:description, { "  Fechar  " } )
      __Quit()
   Finally
   
   End
   
RETURN


Na linha
      cCnString := "Provider=SQLNCLI10;Server=(Local);Database=Harbour;Uid=sa;Pwd=xyz;"
troque (Local) pelo IP, Harbour pelo nome do teu banco, sa pelo nome do usuário e Pwd pela senha, tudo isso fornecido pelo teu provedor.
[]´s
Alexandre Santos (AlxSts)
alxsts
Colaborador

Colaborador
 
Mensagens: 2943
Data de registro: 12 Ago 2008 15:50
Cidade/Estado: São Paulo-SP-Brasil
Curtiu: 21 vezes
Mens.Curtidas: 248 vezes

Pedido de ajuda simples no MySql

Mensagempor cjp » 24 Mai 2014 01:05

Alexandre,

Sim, eles me deram um ip (mssql01.inter.net.br), um usuário e uma senha.

Fiz a substituição, mas não consegui compilar o teu exemplo, pois está dando erro nos includes e no Try.

Parece que não estou com a versão correta do Harbour para isso, né? Uso o hb32, Windows 7.

Em outro post me falaram que teria que instalar uma outra versão do Harbour, mas eu não consegui.
Inacio de Carvalho Neto
cjp
Usuário Nível 6

Usuário Nível 6
 
Mensagens: 1527
Data de registro: 19 Nov 2010 21:29
Cidade/Estado: paraná
Curtiu: 10 vezes
Mens.Curtidas: 20 vezes

Pedido de ajuda simples no MySql

Mensagempor Toledo » 24 Mai 2014 08:32

cjp escreveu:Seguindo instrução do Toledo, contratei o serviço próprio do provedor com essa finalidade.

Inácio, não foi bem isto que lhe instrui...
Toledo escreveu:Verifique se no seu Servidor (FTP) tem opção para criar banco de dados MySQL e qual é o endereço para conexão com o banco de dados. Geralmente os servidores disponibiliza um IP para conexão com o BD.

O que eu orientei você a fazer era de verificar no seu servidor se tinha opção para criar banco de dados MySQL e não SQL Server 2008. Por não prestar atenção no que lhe orientei, você contratou um serviço sem precisão e deve tá jogando dinheiro fora.
Geralmente no serviço básico (pacote básico) de qualquer servidor já vem com no mínimo um banco de dados MySQL, então você não precisa pagar mais nada por isto. Se você for pela conversa de certos servidores, todo dia você vai contratar um serviço novo.

Acho que você deve ter acesso ao Painel de Controle do seu servidor, lá geralmente tem informações sobre os bancos de dados MySQL: Nome do banco de dados, usuário, IP do servidor MySQL, etc.

Então pare de jogar dinheiro fora, se você está pagando pelo SQL Server, cancele já... e verifique se no Painel de Controle tem os dados do MySQL, principalmente:

- Nome do banco de dados
- Usuário e Senha
- IP do servidor MySQL

Com estes dados na mão, tanto o exemplo do Alexandre (alxsts), como o meu, irão funcionar corretamente.

cjp escreveu:pois está dando erro nos includes e no Try.

Vai aqui um dica: quando sentir falta de algum include (arquivo CH), abra o prompt do DOS e entre na pasta do Harbour (c:\hb32) e depois digite: DIR nomedoarquivo.ch /s/p

Por exemplo: DIR hbcompat.ch /s/p

Se você encontrar o arquivo CH em outra pasta que não seja a pasta C:\HB32\INCLUDE, copie o arquivo da pasta onde ele está para a pasta INCLUDE do Harbour.

No caso do arquivo ado.ch, ele é do xHarbour, então provavelmente você não vai encontrar ele no Harbour. Mas no link abaixo você pode copiar ele e salvar na pasta INCLUDE do seu Harbour.

http://www.pctoledo.com.br/forum/viewtopic.php?f=4&t=14438&p=84351#p84351

cjp escreveu:Parece que não estou com a versão correta do Harbour para isso, né?

Com o Harbour 3.2 vai funcionar sem problemas.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar de usuário

Toledo
Administrador

Administrador
 
Mensagens: 3038
Data de registro: 22 Jul 2003 18:39
Cidade/Estado: Araçatuba - SP
Curtiu: 263 vezes
Mens.Curtidas: 258 vezes

Pedido de ajuda simples no MySql

Mensagempor cjp » 24 Mai 2014 11:22

Então, Toledo, eu fiz como vc havia dito: vi no painel de controle do provedor, mas a opção de SQL estava com um "Solicitar ativação". Daí eu mandei um e-mail para o provedor solicitando ativação. Só que eles queriam me cobrar uma mensalidade extra de R$ 50,00. Achei um absurdo e procurei outro provedor. Só que, por erro meu (não foi informação errada tua; acho que me expressei mal), contratei o serviço errado.

Mas olhando novamente no painel de controle do meu provedor original, vi que tem uma opção de solicitar ativação no próprio painel de controle. Fiz isso agora e já recebi o IP, usuário e senha. Não sei se eles irão me cobrar a mensalidade extra depois, mas, como não tem nenhuma informação sobre isso no site, se cobrarem, vou brigar com eles.

Testei agora o teu modelo com os dados fornecidos e funcionou perfeitamente.

Muito obrigado.

P.S.: A tua dica de procurar o arquivo .ch eu já conhecia. Fiz isso com o ado.ch, mas não achei, e daí achei que todos fossem de uma versão diferente.
Inacio de Carvalho Neto
cjp
Usuário Nível 6

Usuário Nível 6
 
Mensagens: 1527
Data de registro: 19 Nov 2010 21:29
Cidade/Estado: paraná
Curtiu: 10 vezes
Mens.Curtidas: 20 vezes

Pedido de ajuda simples no MySql

Mensagempor filizola » 04 Nov 2014 13:50

seguindo exemplo postado pelo amigo rochinha. mudei o odbc pra minha versão.

CASE Upper( cDbEngine ) == "MYSQL"
oConnection:Open( "DRIVER={MySQL ODBC 5.3 ANSI Driver};" + ;
"server=" + cServer + ;
";database=" + cDataBase + ;
";uid=" + cUserName + ;
";pwd=" + cPassword )
ENDCASE

imagem do erro.png


erro odbc.png
"Um passo a frente, e já não estará mais no mesmo lugar..."
Avatar de usuário

filizola
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 412
Data de registro: 19 Ago 2003 20:10
Cidade/Estado: Belo Horizonte/MG
Curtiu: 5 vezes
Mens.Curtidas: 6 vezes

Pedido de ajuda simples no MySql

Mensagempor rochinha » 04 Nov 2014 17:08

Amiguinho,

Você alterou o ADORDD.PRG? então deve incluí-lo como segue abaixo, veja o include no final:
/*
* $Id: mysql1.prg 9217 2008-08-23 15:02:49Z vszakats $
*/
#include "adordd.ch"

THREAD STATIC t_cTableName
THREAD STATIC t_cEngine
THREAD STATIC t_cServer
THREAD STATIC t_cUserName
THREAD STATIC t_cPassword
THREAD STATIC t_cQuery := ""

REQUEST ADORDD

function Main()

   USE mysql VIA "ADORDD" TABLE "user" MYSQL ;
      FROM "127.0.0.1" USER "root" PASSWORD ""

   Browse()

   USE

return nil

#include "adordd.prg"
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para fivolution@hotmail.com. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4538
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 800 vezes
Mens.Curtidas: 242 vezes

Pedido de ajuda simples no MySql

Mensagempor filizola » 04 Nov 2014 17:14

Sim, esta exatamente assim. ao compilar informo hbmk2 mysql1 -lhbwin

compila sem erro, porem falha ao procurar o ODBC
"Um passo a frente, e já não estará mais no mesmo lugar..."
Avatar de usuário

filizola
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 412
Data de registro: 19 Ago 2003 20:10
Cidade/Estado: Belo Horizonte/MG
Curtiu: 5 vezes
Mens.Curtidas: 6 vezes

Pedido de ajuda simples no MySql

Mensagempor rochinha » 04 Nov 2014 17:29

Amiguinho,

Todos que tiveram este erro inclusive eu, estávamos usando Windows Seven.

Não consegui incluir mais informações na mensagem anterior mas segue mais informação:

Deixe o trecho que você alterou como estava e inclua:
   CASE Upper( cDbEngine ) == "MYSQL"
      oConnection:Open( "DRIVER={MySQL ODBC 3.51 Driver};" + ;
                        "server=" + cServer + ;
                        ";database=" + cDataBase + ;
                        ";uid=" + cUserName + ;
                        ";pwd=" + cPassword )

   CASE Upper( cDbEngine ) == "MYSQL5"
      oConnection:Open( "DRIVER={MySQL ODBC 5.3 ANSI Driver};" + ;
                        "server=" + cServer + ;
                        ";database=" + cDataBase + ;
                        ";uid=" + cUserName + ;
                        ";pwd=" + cPassword )


Tente incluir a fonte de dados do MySQL em Fontes de Dados de Sistema no painel ODBC.

Coloquei os arquivos deste RDD no 4shared: adordd_harbour-32-17626.rar.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para fivolution@hotmail.com. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4538
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 800 vezes
Mens.Curtidas: 242 vezes

Pedido de ajuda simples no MySql

Mensagempor filizola » 04 Nov 2014 18:12

Retorna sempre o mesmo erro. vou testando ate a exaustão pra ver se consigo andar.
"Um passo a frente, e já não estará mais no mesmo lugar..."
Avatar de usuário

filizola
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 412
Data de registro: 19 Ago 2003 20:10
Cidade/Estado: Belo Horizonte/MG
Curtiu: 5 vezes
Mens.Curtidas: 6 vezes

Pedido de ajuda simples no MySql

Mensagempor rochinha » 04 Nov 2014 23:28

Amiguinho,

Ufah. Que canseira, instalei tanta coisa, compilei tantas vezes que to vesgo.

Vamos lá:

Baixe e instale MyODBC-standard-3.5.19-win.rar

Baixe e instale MySQL-ODBC-5.3.2 para Windows 32bits ou MySQL-ODBC-532 para Windows 64bits

Acho que no Windows Seven o Driver MyODBC 3.5.19 não fica bem instalado e quando voce instala a versão mais atual o registro é atualizado e o driver antigo passa a funcionar.

Vamos tentar.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para fivolution@hotmail.com. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4538
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 800 vezes
Mens.Curtidas: 242 vezes

Pedido de ajuda simples no MySql

Mensagempor filizola » 06 Nov 2014 13:47

Mestre Rochinha, valeu amigo, agora deu certinho, estranho essas situações de odbc, quando vc postou sobre o problema nos drivers odbc, me lembrei na hora que quando atualizei a versão do banco postgres de um sistema, quase morri de tanto procurar o problema da não conexão com o dito cujo e no final era o odbc.

Obrigado amigo, vou fazer uns testes e definir qual será a melhor opção para usar (mediator, adordd ou sqlmix).
"Um passo a frente, e já não estará mais no mesmo lugar..."
Avatar de usuário

filizola
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 412
Data de registro: 19 Ago 2003 20:10
Cidade/Estado: Belo Horizonte/MG
Curtiu: 5 vezes
Mens.Curtidas: 6 vezes

Pedido de ajuda simples no MySql

Mensagempor filizola » 07 Nov 2014 21:04

Rochinha, fiz os testes de append e replace e funcionou direitinho camarada, até aqui foi o mais prático que achei. Sabe se existe algum bug neste rdd ?

Desde já agradeço.

mysql1.prg
(1.21 KiB) Baixado 80 vezes


dados1.prg
(626 Bytes) Baixado 104 vezes
"Um passo a frente, e já não estará mais no mesmo lugar..."
Avatar de usuário

filizola
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 412
Data de registro: 19 Ago 2003 20:10
Cidade/Estado: Belo Horizonte/MG
Curtiu: 5 vezes
Mens.Curtidas: 6 vezes

Pedido de ajuda simples no MySql

Mensagempor rochinha » 07 Nov 2014 23:21

Amiguinho,

Não fui fundo ainda, mas com os testes que tive de fazer aconteceu de um registro sendo incluso num browse não ser atualizado em outro.

No DBF pelo fato de estarmos mexendo diretamente com a tabela e não com queries ao incluir um registro num local o mesmo se reflete do outro lado.

No caso de usar SQL, o browse precisará de codigo adicional que possa refletir as mudanças feitas em outro local.

Procure o ADORDD.PRG e ADORDD.CH mais atual e trabalhe com ele.

Acho que se voce optar por usar o ADORDD e SQLMix terá mais ganho do que adotar Mediator.

O motor ADO foi renovado nos Windows Seven em diante, mas os métodos continuam os mesmos.

Só tenha em mente que registro fantasma é coisa do xBase. Portanto dar Append blank e trabalhar no registro pode não funcionar com ADO.

Outra coisa, ao dar replaces, tenha certeza de estar fazendo com todos os campos, pois ADO não trabalha como xBase, ADO não permite campos sem valor.

ADO foi feito pelo Chuck Norris, entendeu?
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para fivolution@hotmail.com. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4538
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 800 vezes
Mens.Curtidas: 242 vezes

Anterior Próximo



Retornar para SQL

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 4 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro