Olá. Quero saber que técnica vocês utilizam:
1 - Armazenar a data com másca no DB
2 - Armazer no DB sem máscara e colocar a máscara quando for preciso exibir
Quanto a performance ? o que é mais legal de fazer ?
Obrigado!
Olá. Quero saber que técnica vocês utilizam:
1 - Armazenar a data com másca no DB
2 - Armazer no DB sem máscara e colocar a máscara quando for preciso exibir
Quanto a performance ? o que é mais legal de fazer ?
Obrigado!
Eu sempre usei a opção número 2. O formato “YYYY-MM-DD HH:MM:SS.000” é meio que um padrão* pros bancos de dados, como se fosse o formato nativo (me corrijam se eu estiver errado). Obviamente, na hora de exibir essa data, é aplicada uma máscara em cima e isso não degrada em nada a performance.
Ok. Mas quando a data de ser uma data informada pelo usuário ? e não um TimeStamp do banco.
Dependendo do jeito que vc programar, não fará diferença.
Olá,
Nao tem problema, so vai depender qual o teu banco.
Por exemplo no Postgre tem um tipo Date e um TimeStamp, ja no Oracle é tudo Date e se tu nao informar o “time” ele coloca zerado.
Quanto a opcao, nem pense em guardar data no banco no formato string com mascara é dor de cabeca na certa.
So pra ter ideia, se tu fizer isso e precisar fazer um simples SQL pra calcular algo em cima da data ja vai ser uma bronca.
]['s
Não faz a menor diferença de qualquer jeito. Acho que sua pergunta deveria ser assim: “para campos que representam datas, devo armazená-los no banco de dados usando uma string ou devo utilizar o tipo date nativo do banco de dados e me virar depois para apresentá-los aos usuários da maneira mais adequada para cada situação?”.
Agora, pense em questão de eficiência (pare de pensar como os outros fazem! A maioria pode estar errada!): é melhor armazenar sua data em uma representação textual (e correr o risco de ter alguma data do tipo ‘39/13/1982’ no seu banco de dados) ou você prefere deixar este trabalho todo para o banco de dados (que, certamente, vai saber qual é a melhor formar de tratar/validar sua data, além de saber que o melhor meio para representá-la internamente não é uma STRING e sim um número mágico*)+seu driver JDBC?