Artigo Clube Delphi Edição 48 - Horas e Datas em IB/FB
Neste artigo, apresento os três tipos de dados existentes no InterBase/Firebird (IB/FB), para manipular data, hora e data+hora, mostrando exemplos práticos de sua utilização.
Atenção: por essa edição ser muito antiga não há arquivo PDF para download. Os artigos dessa edição estão disponíveis somente através do formato HTML.
Horas e Datas em IB/FB
Operações com campos temporais no InterBase/Firebird
Os campos DATE, TIME e TIMESTAMP sempre foram cercados de um certo mistério, principalmente para os novos usuários. A introdução do dialeto 3 no IB 6.0 e a conseqüente mudança de nomenclatura e de significado dos campos DATE contribuíram ainda mais para a possível confusão dos usuários entre os tipos de data e hora. Neste artigo, apresento os três tipos de dados existentes no InterBase/Firebird (IB/FB), para manipular data, hora e data+hora, mostrando exemplos práticos de sua utilização.
Tipos disponíveis
Nas versões anteriores ao IB 6.0, o único tipo de dados existente para manipular data e/ou hora era DATE, que armazenava juntamente a data e a hora. Não havia tipos para armazenar datas ou horas separadamente. As novidades que vieram com o IB 6.0 – entre elas, os dialetos – acabaram com essa “limitação”.
O principal motivo da introdução de dialetos nos bancos de dados (BDs) foi, justamente, oferecer um meio de disponibilizar novos tipos e funcionalidades sem quebrar a compatibilidade com os bancos anteriores ao IB 6.0. Um banco gerado em uma versão anterior à 6.0 é tratado sempre como dialeto 1. Neste dialeto, o antigo tipo DATE é interpretado como TIMESTAMP, e continua sendo o único disponível para manipulação de datas e horas. Já nos BDs criados no dialeto 3, existem três tipos de dados temporais, conforme a tabela abaixo:
Tipo |
Descrição |
Intervalo Permitido |
TIMESTAMP |
Substituto do antigo tipo DATE, armazena um par de composto por data + hora |
(Veja intervalos abaixo) |
DATE |
Armazena somente uma data (ano, mês e dia) |
1/01/0001 a 31/12/9999 |
TIME |
Armazena somente uma hora (hora, minuto, segundos e frações de segundo) |
00:00 AM a 23:59.9999 PM |
Tabela1. Tipos de dados temporais
Dica: O dialeto 1 é mantido apenas para efeito de compatibilidade. Todos os novos bancos devem ser criados no dialeto 3 que oferece mais recursos e facilidades." [...] continue lendo...
Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo