MySql - Data/Hora

Forum sobre SQL.

Moderador: Moderadores

tonicm
Usuário Nível 2
Usuário Nível 2
Mensagens: 55
Registrado em: 08 Mar 2016 21:51
Localização: Porto

MySql - Data/Hora

Mensagem por tonicm »

Tenho uma tabela em MySQL com um campo do tipo data/hora, ao retornar a informação para a aplicação em harbour 3.4 (rddado), não consigo fazer o tratamento correto do campo.
Ora retorna o campo com os milésimos de segundos ou só a data.
Com o Substr dá erro, pois o campo é tipo data.
Como apresentar em formato data/hora sem os milésimos de segundos ?

Código: Selecionar todos

   oRs := ExecutaMySQL( "SELECT MAX(DATA_HORA) "+;
                        "FROM cat_hw_simplehelp_cab" )
   xx1 := oRs:Fields( 0 ):Value
   xx2 := DToC(oRs:Fields( 0 ):Value)
   ? xx1
   ? xx2
   oRs:Close()
Resultado:

Código: Selecionar todos

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

MySql - Data/Hora

Mensagem por JoséQuintas »

Só pra chamar a atenção:

O retorno está correto, é datetime que o Harbour também tem.
Agora trata-se de usar funções do Harbour, não tem a ver com ADO ou MySQL, e sim diretamente com Harbour.
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 - Data/Hora

Mensagem por JoséQuintas »

Em último caso, ou quebra-galho, o método antigo sempre funciona:
datetime.png
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
susviela@bol.com.br
Usuário Nível 3
Usuário Nível 3
Mensagens: 236
Registrado em: 30 Jun 2017 11:17
Localização: São José / SC
Contato:

MySql - Data/Hora

Mensagem por susviela@bol.com.br »

JoséQuintas escreveu:Em último caso, ou quebra-galho, o método antigo sempre funciona:

Código: Selecionar todos

s := Transform(x, "") 

Qual a função dessa linha ?

.
.
.
"E quando você perder o controle, colherá o que plantou."
=========================================
Carlos Alberto Nunes #Susviela
Site: https://www.PowerInformatica.com.br
=========================================
Blog xBase: https://programandoxbase.wordpress.com/
Blog TI: https://susviela.wordpress.com

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

MySql - Data/Hora

Mensagem por JoséQuintas »

Ela transforma qualquer coisa em string.

? transform( 1, "" ) + Transform( Date(), "" ) + Transform( hb_DateTime(), "" ) + """

A gente costuma usar pra coisas do tipo Transform( 500.5, "@E 999,999,999.99" )
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
susviela@bol.com.br
Usuário Nível 3
Usuário Nível 3
Mensagens: 236
Registrado em: 30 Jun 2017 11:17
Localização: São José / SC
Contato:

MySql - Data/Hora

Mensagem por susviela@bol.com.br »

JoséQuintas escreveu:Ela transforma qualquer coisa em string.

? transform( 1, "" ) + Transform( Date(), "" ) + Transform( hb_DateTime(), "" ) + """

- Boa dica, professor, sempre bebendo da sua sabedoria em programação xBase, obrigado por compartilhar conosco.

:-Y :-Y :-Y
.
.
"E quando você perder o controle, colherá o que plantou."
=========================================
Carlos Alberto Nunes #Susviela
Site: https://www.PowerInformatica.com.br
=========================================
Blog xBase: https://programandoxbase.wordpress.com/
Blog TI: https://susviela.wordpress.com

( #ProgramandoxBase #AllxBase )
tonicm
Usuário Nível 2
Usuário Nível 2
Mensagens: 55
Registrado em: 08 Mar 2016 21:51
Localização: Porto

MySql - Data/Hora

Mensagem por tonicm »

Não sabia que o transform convertia em carater quando o 2º parâmetro é "".
Funcionou bem.

Obrigado JoséQuintas :-Y :-Y :-Y
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

MySql - Data/Hora

Mensagem por alxsts »

Olá!

Convém consultar as funções de data e hora do Harbour Funções de data e hora do Harbour.

DateTimeTimestamp
[]´s
Alexandre Santos (AlxSts)
Responder