[firebase-br] Res: Converter um campo inteiro para data

Welson Avelar welson_avelar em yahoo.com.br
Seg Out 16 23:01:07 -03 2006


Pra armazenar o valor no campo, eu trunco o valor passado no programa, usando a função Trunc().
Daí armazena, por exemplo, algo como 38853 para a data 28/06/2006 (não tenho certeza da verdade dessa data, é apenas exemplo)
Dessa forma, as datas são contadas a partir de Dezembro de 1899 (acho que é 1899 mesmo. ou seria 1900 ?! oO)

Em suma, com a função Trunc() eu pego o número 38853,125 (hipotético) e gravo somente 38853, que é a parte correspondente a data. O "número quebrado" corresponde as horas.

E eu tamb[em concordo: nada de UDFs. Pelo menos enquanto eu não encontrar uma outra solução.

Obrigado amigos. Sucessos.
 
=================================
"O que me preocupa não é o grito dos maus. É o silêncio dos bons."
Martin Luther King.
=================================
Welson de Avelar Soares Filho
Analista/Programador Delphi
Gemini Sistemas
Juiz de Fora - Minas Gerais
=================================

----- Mensagem original ----
De: Eduardo Jedliczka (TeamFB):

bom, primeiramente não sabemos como as datas estão gravadas na base do 
Welson Avelar, por isto qualquer especulação tem uma probabilidade de ajuda 
relativamente pequena.

Acabei demonstrando duas possibilidades (data formatada como inteiro, e dias 
passados desde 1900), que são disparadamente as mais utilizadas. Mas há 
inúmeras outras possibilidades: ano + número da semana do ano + dia da 
semana ou ano + número do dia do ano.

Apesar de não serem elegantes, elas funcionam... Mas como serão utilizadas 
baseadas em campos de tabelas existentes no banco de dados, pode-se criar 
uma VIEW ou Campo Calculado (COMPUTED BY) para torná-las mais amigáveis ao 
DBA / utilizador. Em caso de alteração, pode-se ainda escrever uma trigger 
que atualize o campo correto.

Quanto à usar UDF... eu procuro evitar o máximo que eu puder... e as razões 
são simples: São muito fáceis de fazer em windows, razoáveis em linux, 
ligeiramente difíceis em FreeBSD, e quase que inviáveis em outros UNICES e 
plataformas não-X86. Isto sem contar a necessidade de copiá-las para a pasta 
UDF após a instalação, e preucauções extras com o restore (em algumas 
plataformas).

Claro que quem administra um único servidor não terá dificuldades, mas 
quando precisa dar atendimento telefônico para dezenas de "clientes 
leigos"...

Sendo assim, entendam esta mensagem como uma humilde opinião (sem falsa 
modéstia) e não como uma verdade imutável ou crítica.

======================
Eduardo Jedliczka
Membro do TeamFB - FireBase
Apucarana - PR
======================
"Posso não concordar com nada do que dizes.
Mas defenderei até a morte o seu direito de dizê-lo"
(Voltaire 1694-1778)





		
_______________________________________________________ 
Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. Registre seu aparelho agora! 
http://br.mobile.yahoo.com/mailalertas/ 
 





Mais detalhes sobre a lista de discussão lista