insert hora

Dúvidas, dicas e truques de SQL, Select, Update, Delete, cláusulas, operações com joins, Funções em SQLs, etc
omaisnormalbaba
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 3
Registrado em: Ter, 26 Jun 2007 9:20 am
Localização: Passos - MG
Hello World

Bom dia... Sou novo no forum e tambem em oracle... Primeiro gostaria de parabenizar vocês pelo forum.. Ele é muito bom...Gostaria da ajuda de vocês...
Eu tenho uma tabela que precisa armazenar apenas os horarios da minha aplicação. Eu vou inserir apenas time... Eu já tentei coverter mas não da certo..
Ex:

Selecionar tudo

insert into raca values (4,1,'Rot','Grande',to_date('01:00:00', 'hh24:mi:ss'))..
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Se o campo da sua tabela é DATE, você tem que colocar uma data junto dessa hora.
Não importa qual seja, pois o que interessa pra você é a hora.

Da forma que você fez, só vai funcionar, se o campo for VARCHAR2.
:-o
omaisnormalbaba
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 3
Registrado em: Ter, 26 Jun 2007 9:20 am
Localização: Passos - MG
Hello World

dr_gori..

O meu campo é Date...Mas se eu fizer assim:

Selecionar tudo

insert into raca values (5,1,'podle','pequeno',to_date('01/01/2007 00:30:00','dd/mm/yyyy hh24:mi:ss'),to_date('01/01/2007 01:30:00', 'dd/mm/yyyy hh24:mi:ss'))
No banco de dados fica armazenado completo, com datas e horas..
Eu coloquei a chamada :

Selecionar tudo

select * from raca;

Retornou:
1-jan-2007 0:30:00....

não retornou apenas a hora....

O que estou fazendo errado?
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Sim, o campo DATE guarda a data também.
Mas como você quer só os minutos, faça assim com o seu select:

Selecionar tudo

select to_char( campo , 'hh24:mi:ss') hora
from raca;
Busque apenas a hora.

Mas por que você quer apenas a hora ? Qual a utilidade de manter apenas a HORA e não a data?
omaisnormalbaba
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 3
Registrado em: Ter, 26 Jun 2007 9:20 am
Localização: Passos - MG
Hello World

Valeu.. obrigado..
rob.rodrigues
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 3
Registrado em: Ter, 09 Out 2007 7:50 am
Localização: São Paulo - SP

Bom dia Pessoal,

Sou novo aqui e iniciante em ORACLE também, e tenho um problema parecido.

Tenho que preencher alguns campos DATE apenas com os minutos e segundos.

Motivo: Estes campos irão medir o tempo de preparo de um prato, e o tempo da entrega (este é fixo em 20 minutos)

Tentei preenher o campo com o seguinte insert:

Selecionar tudo

INSERT INTO BAIRRO ( CDBAIRRO, NMBAIRRO, TEMPENTREGA)
             VALUES ( 01, 'Aclimação', to_date('20:00', 'mi:ss'));
Ele rodou normal e aceitou os dados, contudo o aplicar o select

Selecionar tudo

 select * from bairro
O resultado foi o seguinte:

Selecionar tudo

CDBAIRRO               NMBAIRRO             TEMPENTREGA               
---------------------- -------------------- ------------------------- 
1                      Aclimação            01/10/07                  

1 rows selected
Teria alguma forma de eu conseguir preencher este campo apenas com os minutos, pois no futuro, terei que utilizar uma function para somar os valores e mostrar na tela ao usuário (uma espécie de monitoramente), o prazo estimado para a entrega do produto.

ps. Desculpem reviver o tópico, mas é que o tema é semelhante e obrigado pela paciência
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

O SQL não mostra a hora.
Você conseguirá olhar o valor dos minutos se usar um TO_CHAR, e informando a máscara.

Selecionar tudo

select to_char(TEMPENTREGA, 'hh24:mi') hora from ... 
rob.rodrigues
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 3
Registrado em: Ter, 09 Out 2007 7:50 am
Localização: São Paulo - SP

Muito obrigado dr_gori.

Era exatamente isso que eu precisava para poder prosseguir com o meu trabalho.

O preenchimento dos dados está certo, agora só terei que criar uma function para somar os tempos de entrega com o maior tempo de preparo dos pratos, e acrescentar a hora do pedido do cliente (que será definida pelo sistema).

Muito obrigado mesmo.
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 16 visitantes