tambem tive este problema com DbExpress.

Consegui resolver com Cast:

select camponumeric9,2 from tabela, ele reconhece como TFMTBCDField

select cast(camponumeric9,2 as float ) from tabela, ele reconhece como
TFloatField,



  -----Mensagem original-----
  De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED]
nome de Plinio Cesar Pavin
  Enviada em: sábado, 30 de dezembro de 2006 11:04
  Para: delphi-br@yahoogrupos.com.br
  Assunto: Re: [delphi-br] MySQL Com DBExpress


  Sim, a CoreLab também tem esse driver. Mas pelas informações que tive, o
problema que enfrentei é com relação ao próprio DBExpress, pois tive
informações de problemas semelhantes, com outros bancos de dados (Firebird,
Oracle, SQL Server) usando DBExpress.

  O principal problema é com relação ao mapeamento dos campos numéricos
(Decimal), que dependendo da precisão, são mapeados como TBCDField ou
TFMTBCDField, gerando problemas em todos os lugares da aplicação onde eram
feitos cálculos.

  No meu caso específico, aconteceu o seguinte:

  Usando o driver antigo da MicroOlap com mySQL 4: Funcionava tudo
normalmente, e os campos DECIMAL eram mapeados para TFloatField. A aplicação
foi toda desenvolvida com esse componente.

  Após migrar o BD para MySQL 5: Simplesmente o driver DBExpress da
MicroOlap não "enxergava" mais os campos DECIMAL.

  Atualizamos então o driver da MicroOlap para a versão mais recente: Todos
os campos DECIMAL passar a ser mapeados como TBCDField ou TFMTBCDField.

  Substituindo o DBExpress por MYDAC, os campos voltaram a ser mapeados como
TFloatField, e aplicação funcionou normalmente...

  Assim, resolvemos abandonar de vez o DBExpress.

  Plinio Cesar Pavin

  ----- Original Message -----
  From: Alexandre
  To: delphi-br@yahoogrupos.com.br
  Sent: Saturday, December 30, 2006 12:05 PM
  Subject: RES: [delphi-br] MySQL Com DBExpress

  Estimados,

  Bom dia. Só uma dúvida: A CrLab também tem um driver dbexpress pra MySQL,
  não tem? Não sei porque o driver da MicroOlap não funciona a contento, mas
  já verificaste o driver dbexpress da CrLab ?

  Saudações.

  ---
  []'s

  Alexandre

  Frase da semana: "No mundo dos negócios todos são pagos com duas moedas:
  Dinheiro e Experiência. Agarre a experiência primeiro, o dinheiro virá
  depois." (Harold Geneen)

  -----Mensagem original-----
  De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em
  nome de Plinio Cesar Pavin
  Enviada em: sexta-feira, 29 de dezembro de 2006 14:36
  Para: delphi-br@yahoogrupos.com.br
  Assunto: Re: [delphi-br] MySQL Com DBExpress

  Luiz, acabamos comprando os dois: o driver dbexpress da MicroOlap e o
MyDAC
  !

  Jogamos dinheiro fora com o driver da MicroOlap: Simplesmente todos os
  campos decimal(x,y) do mySQL, que antes eram mapeados como TFloatField,
  passaram a ser mapeados como TBCDField ou TFMTBCDField, gerando inúmeros
  erros de type mismatch.

  Nota 10 para o myDAC ! Está dando trabalho pra substituir os componentes
  DBExpress (SQLDataSet + DatasetProvider + ClientDataset) por apenas um
  componente TMyQuery, mas depois disso, funciona que é uma maravilha.

  A propósito: vc utiliza o myDAC num DataModule ? A aplicação em que estou
  trabalhando possui os componentes de conexão em cada form, pois cada form
  (principalmente consultas e relatórios) possui uma query diferente. É
  correto ?

  Plinio Cesar Pavin

  ----- Original Message -----
  From: Luiz Escobar
  To: delphi-br@yahoogrupos.com.br
  Sent: Wednesday, December 27, 2006 2:20 PM
  Subject: Re: [delphi-br] MySQL Com DBExpress

  Bom EU uso MySQL 5.xx com o MyDAC da www.clab.com.br e não mudo por nada
  nesse mundo, pelo menos até sair algo melhor que ele, que na minha opnião
é
  o melhor... hehehehe

  Luiz Escobar
  Analista/Desenvolvedor:
  WEB - HTML/JavaScript/PHP/MySQL
  WINDOWS - Delphi/MyDAC/ASSEMBLER/MySQL/xBase
  DOS - Clipper/Assembler xBase
  SERVIDORES - NetWare4.11, LINUX-REDHAT9, WINDOWS-2k
  LINUX - LAZARUS/Kylix/MySQL;
  http://www.megasistema.com.br

  ----- Original Message -----
  From: Plinio Cesar Pavin
  To: delphi-br@yahoogrupos.com.br
  Sent: Wednesday, December 27, 2006 12:27 PM
  Subject: [delphi-br] MySQL Com DBExpress

  Olá Pessoal, estou dando manutenção numa aplicação desenvolvida com
  Delphi 7 + mySQL (4.00) usando DBExpress (Driver da MicroOlap), porém
  o cliente precisa atualizar o BD para a versão 5.0. Ao fazer isso, o
  driver da MicroOlap começa apresentar uma série de erros nos campos
  numéricos.

  Em resumo, estou aceitando sugestões:
  Fazer o cliente comprar o driver atualizado da MicroOlap ?
  Fazer o cliente comprar o driver CoreLab ?
  Abandonar de vez o DBExpress ?
  Abandonar de vez o mySQL ?

  Um dos maiores problemas é que a aplicação tem componentes de acesso
  em cada form, ou seja, quem desenvolveu não utilizou um datamodule
  para centralizar os componentes de acesso.Assim, se resolver abandonar
  o DBExpress, vou ter que percorrer todos os forms da aplicação
  substituindo os componentes.

  Gostaria de saber de vocês, se isso acontece com outros bancos, ou
  realmente o Delphi não acompanhou a evolução somente do mySQL. Por
  exemplo: o BDS 2006 conecta normalmente com o SQL Server 2005 Express
  Edition, usando DBExpress ?

  Estou realmente perdido, pois tenho alguns projetos para iniciar, e
  ainda não decidi qual banco de dados e componente de acesso utilizar.
  já que tenho medo de futuramente cair no mesmo problema (o componente
  não acompanhar a evolução do BD).

  Um abraço a todos e um FELIZ 2007 !

  Plinio Cesar Pavin

  [As partes desta mensagem que não continham texto foram removidas]



  
--
No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.5.432 / Virus Database: 268.16.0/609 - Release Date: 29/12/2006
16:48


[As partes desta mensagem que não continham texto foram removidas]

Responder a