Array
(
)

Delphi SQL Server

Performance
   - 08 out 2003

Olá, sou novo e estou com um problema que creio eu, seja de fácil solução:

Defini os campos relativos a HORA e DATA no meu banco SQL como datetime, mas estou com problemas para acessar no Delphi...

Estou usando ADO e o problema é que na hora de mostrar o campo ele mostra o campo hora_inicio, por exemplo com uma data estranha (não sei da onde ele tira) e a hora(que é o que me interessa).

Gostaria de mostrar só a hora em real time, e quando for gravar o dado, que ele grave só a hora.

O mesmo digo para a Data, mostrar apenas a data e gravar apenas a data..

Trecho do código..
sql.add(´select a.cod_terminal as ´Cód.Terminal´, c.nome_cliente as ´Nome do Cliente´,´);
sql.Add(´b.hora_inicio_uso_terminal as ´Hora de Início´, c.qtd_credito as ´Nr.Créditos´´);
sql.add(´from RESERVA a, RESERVA_TERMINAL b, CLIENTE c´);
sql.add(´where a.cod_reserva=b.cod_reserva and b.cod_cliente=c.cod_cliente´);

O campo é o hora_inicio_uso_terminal ------

Valeu

Felipe_cduarte
   - 15 out 2004

Fala,

Estava fazendo uma busca no forum e encontrei este seu tópico, acho q vou ´ressuscita-lo´ pq estou com o mesmo problema... Diferentemente do Firebird ( q eu tb uso ) que tem dois campos distintos, um date para data e um time para hora, o SQL Server usa o campo datetime pra armazenar a data e hora, mas queria saber tb como fazer pra só gravar a hora ... Se você encontrou a solução por favor me passe , mas tambem se alguem no forum souber poderia ajudar hehehe

[]´s

PS: tb desenvolvo com Delphi + ADO + SQL Server, se precisar de ajuda estamos ae

Marcus.magalhaes
   - 15 out 2004

Blz Felipe.

Vc pode usar o Convert para isso.

Select Convert(VarChar, campo, formato)

o formato pode variar de 1 à 14 para mostar o ano sem o século e de 101 à 131 (sequencial até 114) para mostra com o século.

Ex.: Select convert(varchar, getdate(), 108) onde 108 mostra somente a hora.

Faça alguns testes e veja o q melhor se adapta a vc.

Att

Felipe_cduarte
   - 15 out 2004

Fala Marcus,

essas funcoes eu tinha visto, mas por exemplo , se eu quiser armazenar a hora de inicio de uma determinada entidade, ele vai adicionar um data ... que data seria essa ???

Marcus.magalhaes
   - 15 out 2004

Boa tarde Felipe.

Se vc usar uma coluna DateTime, ele vai armazenar ´1900-01-01 + hh:mm:ss.xxx´, porém pq vc não usa um tipo char(8)?

Att,