Página 1 de 1

campo timestamp msql da contrib

Enviado: 29 Jan 2009 16:11
por enfosoft
Ola grupo,
tenho uma aplicação xharbour 0.99.7 que faz acesso a uma base de dados mysql usando a mysql da contrib, funciona perfeitamente. Contudo, preciso ler campos timestamp (nunca tinha usado esse tipo de campo) e nao retorna o conteudo correto. Quando tento recuparar essa informacao, esta retornando somente o ano. Por exemplo o campo tem esse valor 2009-01-05 10:20:19 e recupera apenas 2009. Alguem passou por isso? Existe alguma forma de contornar esse problema?
Eu faco assim

Código: Selecionar todos

oTablePDW := oServer:Query(sql)
DO WHILE !oTablePDW:EOF()
       REGISTRO:= oTablePDW:getrow()
    @ L,195 SAY REGISTRO:FieldGet('data') // campo timestamp
       oTablePDIW:SKIP()
ENDDO

Re: campo timestamp msql da contrib

Enviado: 03 Fev 2009 10:31
por Stanis Luksys
Opa beleza?

Dá um alter table e converte o campo para datetime e usa a função now() nas inclusões onde este campo esteja nulo. Outras aplicações provavelmente nem vão perceber.

Mas não é a "melhor" saída.

Re: campo timestamp msql da contrib

Enviado: 03 Fev 2009 14:29
por MARCELOG
Use a função date_format

"SELECT COLUNAQUALQUER,DATE_FORMAT(COLUNADATA,'%d/%m/%Y - %H:%i:%s') FROM TESTE"

Isso devolve ALGUMACOISA|00/00/0000 - 00:00:00

"SELECT DATE_FORMAT(COLUNADATA,'%d/%m/%Y - %H:%i:%s') FROM TESTE"
Isso devolve 00/00/0000

Fácil né.

MarceloG

Re: campo timestamp msql da contrib

Enviado: 03 Fev 2009 18:35
por enfosoft
Muito bem MarceloG. Apos sua dica ficou facil kkkk.
Funcionou perfeitamente
Obrigado