1
resposta

Formato de data

Olá,

Antes de responder o exercício eu havia visto que o formato de data estava 'DD-MM-YYYY' na tabela notas_fiscais. Assim, eu fiz a query colocando a data sem a função TO_DATE e obtive o mesmo correto. Pergunto:

  1. O resultado foi correto, pois a configuração da data no meu banco local está no mesmo formato?
  2. No exercício, a utililização da função to_date no formato 'YYYY-MM-DD foi para evitar falhas entre o formato de data da consulta e a configuração de data no banco?
  3. Quando um campo do tipo DATE é criado, onde configuramos o formato da data?

Minha consulta:

SELECT * FROM notas_fiscais WHERE ROWNUM <=10 AND data_venda = '01/01/2017';

Atenciosamente, Ricardo Vieira

1 resposta

Olá Ricardo, tudo bem?

Peço desculpas pela demora no retorno.

O resultado foi correto, pois a configuração da data no meu banco local está no mesmo formato?

Isso mesmo Ricardo, como o formato da data no seu banco de dados, já estava no formato que você utilizou para realizar a consulta, automaticamente ele reconheceu, porém, para realizar a consulta em outro formato, como este exemplo da atividade, você precisaria utilizar a função to_date.

  • Este é o formato de data no meu banco de dados:
SELECT * FROM NOTAS_FISCAIS WHERE DATA_VENDA = '01-01-17' AND ROWNUM <= 10; 

Executando o select com o formato de data configurad no meu banco de dados

  • Quando tento utilizar um formato diferente sem a função to_date, um erro é retornado:
SELECT * FROM NOTAS_FISCAIS WHERE DATA_VENDA = '2017-01-01' AND ROWNUM <= 10; 

Executando o select em outro formato de data sem utilizar o to_date

  • Já quando utilizo um outro formato com a função to_date a consulta é executada sem problemas:
SELECT * FROM NOTAS_FISCAIS WHERE DATA_VENDA = TO_DATE('2017-01-01','YYYY-MM-DD') AND ROWNUM <= 10;

Executando o select em outro formato de data utilizando o to_date

No exercício, a utilização da função to_date no formato 'YYYY-MM-DD foi para evitar falhas entre o formato de data da consulta e a configuração de data no banco?

Isso mesmo Ricardo, quando trabalhamos com data, pode ocorrer de informarmos um formato diferente do que está no banco de dados, então para que a consulta seja executada sem problemas utilizamos a função to_date.

Quando um campo do tipo DATE é criado, onde configuramos o formato da data?

A data é uma configuração padrão para todo o banco de dados, então todas as tabelas existente no banco de dados vão seguir este mesmo padrão, mas você pode alterar o formato da data do seu banco de dados da seguinte forma:

  • Acesse o menu Ferramentas e selecione Preferências

Acessando o meu ferramentas e selecionando a opção Preferências

  • Na opção Banco de dados acesse NLS

Acessando a opção banco de dados, e NLS  para alterar o idioma de datas

Em NLS está toda a parte de configuração de idioma e datas.

Espero ter ajudado, qualquer nova dúvida é só falar!

Abraços e bons estudos!