首页 > 解决方案 > 是什么导致 MariaDB 中的日期/时间字段为空或 0

问题描述

即使数据包含有效的日期/时间,进入 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')

和服务器上的示例结果 在此处输入图像描述

表是否可能已损坏?有哪些替代方法可以隔离问题。

标签: javamariadbapache-torque

解决方案


推荐阅读