Dados da estrutura do MYSQL

Fórum sobre Banco de Dados e RDDs para Clipper/[x]Harbour.

Moderador: Moderadores

Avatar do usuário
Poka
Usuário Nível 4
Usuário Nível 4
Mensagens: 565
Registrado em: 25 Out 2004 21:26
Localização: Leme/SP

Dados da estrutura do MYSQL

Mensagem por Poka »

Bom dia

Uso LIBMYSQL.DLL

precisaria pegar o tamanho e as decimais

Código: Selecionar todos

   FOR i := 1 TO oQuery:FCount()
      aFields[ i ] := oQuery:FieldName( i )   // nome do campo
      aTypes[ i ] := oQuery:FieldType( i )    // tipo de campo 
      aNames[ i ] := oQuery:FieldGet( i )  //   conteudo do campo

      atam[ i ] := oQuery:Fieldsize( i ) //  nao deu certo
						decimais ????

   NEXT


se alguém puder ajudar agradeço.

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

Dados da estrutura do MYSQL

Mensagem por JoséQuintas »

Isso é complicado.
Tenho um quebra-galho em ADO pra isso.
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (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
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

Dados da estrutura do MYSQL

Mensagem por Toledo »

Amigo, tente o seguinte:

Código: Selecionar todos

atam[ i ] := oQuery:FieldLen( i )
aDec[ i ] := oQuery:FieldDec( i )
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 do usuário
Poka
Usuário Nível 4
Usuário Nível 4
Mensagens: 565
Registrado em: 25 Out 2004 21:26
Localização: Leme/SP

Dados da estrutura do MYSQL

Mensagem por Poka »

Quintas, Toledo. Obrigado por responder.

Toledo, deu certo. Obrigado

Poka
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Dados da estrutura do MYSQL

Mensagem por asimoes »

Não sei se atende:

Código: Selecionar todos

       nTipo := cRecordSet:Fields( i ):Type
       nTam  := cRecordSet:Fields( i ):DefinedSize
       nTamN := cRecordSet:Fields( i ):Precision
       nDec  := cRecordSet:Fields( i ):NumericScale
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
Cavalo Marinho
Usuário Nível 3
Usuário Nível 3
Mensagens: 156
Registrado em: 01 Ago 2009 10:01
Localização: Aracaju/Se

Dados da estrutura do MYSQL

Mensagem por Cavalo Marinho »

Boa noite Poka
Nao consigo pegar a estrutura do banco mysql/mariadb, poderia passar a query que você escreveu como exemplo, estou iniciando no mariadb/mysql e tenho umas dificuldades tecnicas.
Agradeço.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20415
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

Dados da estrutura do MYSQL

Mensagem por JoséQuintas »

Fica tudo em tabelas.
Só olhar pelo HEIDISQL e vai ver os nomes das tabelas e dos campos, e índices, e etc.
É no banco: information_schema
Dá uma passeada pelas tabelas, pra ver cada uma, e o que pode consultar.
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (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
Cavalo Marinho
Usuário Nível 3
Usuário Nível 3
Mensagens: 156
Registrado em: 01 Ago 2009 10:01
Localização: Aracaju/Se

Dados da estrutura do MYSQL

Mensagem por Cavalo Marinho »

Boa tarde
Quntas talvez eu nao tenha me expressado direito, quanto as tabelas pelo heidsql eu sei como utilizar, eu me refiro a obter os tamanhos e tipos dos campos das tabelas pelo aplicativo, pois utilizo o getbox e tenho que definir o tamanho para edição, eu automatizo pegando os tamanhos (isso em Dbf) pq se alterar a tabela ja tenho alterado automaticamente.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20415
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

Dados da estrutura do MYSQL

Mensagem por JoséQuintas »

Aí está diretamente relacionado com o que usa pra conectar: hbmysql, sqlmix, ADO, etc.
Eu preferi não deixar o browse preso a isso.
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (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
Poka
Usuário Nível 4
Usuário Nível 4
Mensagens: 565
Registrado em: 25 Out 2004 21:26
Localização: Leme/SP

Dados da estrutura do MYSQL

Mensagem por Poka »

Boa tarde

Asimoes, vou testar o seu , parece ter alguma coisa a mais.

José Quintas disse
Só olhar pelo HEIDISQL e vai ver os nomes das tabelas e dos campos, e índices, e etc.
Nunca usei, mas eu precisava fazer no sistema tudo integrado. Um médico pediu um sistema à parte e o sistema dele é MYSQL.
Todo dia tem que atualizar a base de dados do paciente.
Deu tudo certo

Cavalo Marinho disse
Nao consigo pegar a estrutura do banco mysql/mariadb, poderia passar a query que você escreveu como exemplo, estou iniciando no mariadb/mysql e tenho umas dificuldades tecnicas.
Peguei os exemplos do mysql que esta em minigui\harbour, fiz umas alterações e funcionou perfeito.
Não uso MYSQL, estou usando Firebird + harbour + minigui extend
Vou criar um executável aqui pra vc testar aí.
Infelizmente não sei se poderei passar essa semana. mas a semana que vem passo sem falta.

Abraço

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

Dados da estrutura do MYSQL

Mensagem por JoséQuintas »

Ah.... tem mais opções....
No caso do ADO, algumas LIBs tem ADORDD, que transforma o acesso ao recordset igual a DBF.

Eu preferi de outro jeito.
Apenas pra facilitar o entendimento:
Vamos imaginar que o browse só vai fazer string... aí ele sempre sabe o tamanho certo.
Então, ao invés de passar pro browse os campos diretamente, passe já transformados.
Ao invés do browse fazer data, número e texto, ele pode fazer Dtoc( Data ), Str( numero, 10, 2 ) e texto
Apenas ao invés de definir a coluna como sendo o campo pro browse converter, você já passa convertido do jeito que quiser.
Acaba sendo simples e prático, e atende dbf, array, e qualquer outra coisa, além de acabar dando mais recursos de uso, porque pode ter campos diferentes do que está no browse, por exemplo ter a ID do registro, sem ter que mostrar no browse.
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (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/
Responder