В Oracle SQL: как вставить текущую дату + время в таблицу?
Я написал ниже код, но он только, кажется, вставляет текущую дату, а не текущее время. Кто-нибудь знает, как это сделать?
insert into errortable
(dateupdated,table1id)
values
(TO_DATE(sysdate, 'dd/mm/yyyy hh24:mi:ss'),1083);
2 ответов
это только кажется, потому что это распечатка. Но на самом деле, вы не должны писать логику таким образом. Это эквивалентно:
insert into errortable (dateupdated, table1id)
values (sysdate, 1083);
кажется глупым преобразовывать системную дату в строку, чтобы преобразовать ее обратно в дату.
Если вы хотите увидеть полную дату, то можно сделать так:
select TO_CHAR(dateupdated, 'YYYY-MM-DD HH24:MI:SS'), table1id
from errortable;
вы можете попробовать с помощью запроса ниже:
INSERT INTO errortable (dateupdated,table1id)
VALUES (to_date(to_char(sysdate,'dd/mon/yyyy hh24:mi:ss'), 'dd/mm/yyyy hh24:mi:ss' ),1083 );
чтобы просмотреть результат:
SELECT to_char(hire_dateupdated, 'dd/mm/yyyy hh24:mi:ss')
FROM errortable
WHERE table1id = 1083;