2016-11-01 3 views
1

У меня есть запланированный процесс постоянно обновлять пустой столбец временной метки с текущим временем, но интересно я вижу такое несоответствие:Странного поведения от Oracle CURRENT_TIMESTAMP

enter image description here

каждые из записей обновления с помощью одного обновления к один или несколько строк:

update timestamp = current_timestamp where row_condition = true; 

Но как это случилось, что Oracle current_timestamp вели себя по-разному в различных вызова запроса? один выводит точно правильную метку времени, но другой вывод из ниоткуда (31-DEC-69)?

+0

Что было по-другому в поведении? Кроме того, вы имеете в виду, что у вас был процесс, работающий в течение почти 50 лет? Я не верю в это. (Или, вы говорите, что 31-DEC-69 неверен, и вы не знаете, почему он встал?) – mathguy

+0

@mathguy вы правы, вопрос не так ясен, поэтому я его обновляю. Я не знаю, как 'current_timestamp' дал этот 31-DEC-69. – Dreamer

+0

current_timestamp - это отметка времени с часовым поясом, и я думаю, что столбец тоже. Это означает, что часовой пояс сеанса, создающего запись, - GMT-4 (Восточное побережье США?), И он вставляется с эпохой 1 января 1970 года. –

ответ

0

Звучит так, как будто у вас может быть значение DEFAULT для этого столбца. Строки были вставлены, когда значение не было указано для столбца временной метки, поэтому оно было заполнено значением по умолчанию.

Пробег: select data_default from all_tab_columns where table_name = 'YOUR_TABLE'; YOUR_TABLE - это имя таблицы (не забудьте записать его в верхнем регистре). Это скажет вам, есть ли значение по умолчанию для этого столбца. Вы можете добавить имя столбца в предложение where, если хотите, тоже, но если вы этого не сделаете, вы можете найти еще больше информации, о которой вы, возможно, не знали.

+0

выполнил запрос, и результат был нулевым. нет значения по умолчанию для этого столбца. – Dreamer

+0

Есть ли триггер на столе? – mathguy

+0

нет триггера. О, забудьте упомянуть, что tomcat и Oracle находятся в CENTOS, но приложение работает в Windows, но я не думаю, что это проблема ... – Dreamer

Смежные вопросы