Что приводит к тому, что поле даты / времени имеет значение null или 0 в MariaDB
Значения даты / времени, входящие в таблицу MariaDB, всегда равны нулю, даже если данные содержат действительную дату / время.
Здесь значение устанавливается внутри подготовленного оператора:
if (updateTS != null) {
pstmt.setTimestamp(3, new java.sql.Timestamp(updateTS.getTime()));
} else {
pstmt.setTimestamp(3, new java.sql.Timestamp(System.currentTimeMillis()));
}
и это SQL для подготовленного оператора.
insert into ps_qbo (action, result, update_ts, message, session_id, request, status) values(?, ?, ?, ?, ?, ?, ?)
Версия Maria DB - 5.5.56 (версия протокола 10), драйвер - Connector / J v 5.0.4.
Тот же самый код работает в другом модуле, и значение даты / времени вставляется правильно.
Это пример строкового значения подготовленного оператора во время выполнения:
insert into ps_qbo (action, result, update_ts, message, session_id, request, status) values('rollWorkCheck', 'pass', '2021-06-16 08:20:04', null, '2612db733c7531e601ed6d1795264bdd', null, 'new')
и образец результата на сервере
Возможно ли, что таблица повреждена? Каковы альтернативы возможных тестов для выявления проблемы.