Java 字符串到日期转换为 null,写入 SQL 数据库问题

标签 java sql parsing simpledateformat

我有一个 Date 已转换为 String 以传递给 Java Socket 服务器。此值的一个示例是 06:19:18p.m。 2011 年 1 月 13 日

Socket 服务器中,我试图在将其写入 SQL 数据库表之前将其转换回 Date 值,但转换后的值为 。我也曾尝试将该值作为原始 String 写入 SQL 数据库,但它不会写入,除非其中没有冒号、句号或正斜杠字符。

有什么办法可以解决这个问题吗?很抱歉,我无法查看或发布堆栈跟踪,因为我没有对运行我的 Jar 文件的服务器的管理员访问权限。

我转换 String 的代码是:

Date date = null;
SimpleDateFormat sdf = new SimpleDateFormat("hh:mm:ssa dd/MM/yyyy");
try { 
    date = sdf.parse(timestamp);
} 
catch (ParseException e) {
    e.printStackTrace();
}

最佳答案

我不确定您为什么不能正确解析,但您对此的想法全错了。不要将 String 保存在数据库中,您应该创建 TIMESTAMP 或 DATE 类型的列。然后您可以使用 JDBC 中的 getDate() 来获取日期对象。

关于Java 字符串到日期转换为 null,写入 SQL 数据库问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4683773/

相关文章:

parsing - 表示逗号分隔列表的语法表达式

java - 使用 JSOUP 解析 HTMl - 需要特定模式

java - 线程和方法调用如何在 Java 中的堆栈上分配?

java - 固定线程池的理想大小是多少?

php - 在 PDO 中使用 ON DUPLICATE KEY UPDATE

sql - 扑克和使用 SQL 事务处理彩池中的钱以保持一致性

用于级联递归删除的 SQL Server 触发器

parsing - 如何在 Haskell 中将小数部分解析为有理数?

java - Hibernate 保留起始索引为 1 而不是 0 的列表

java - 如何使用 Morphia 存储空字段