`
shutiao2008
  • 浏览: 212043 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

处理MySQL中0时时间数据问题的办法

    博客分类:
  • db
阅读更多
现象:
在Mysql数据库中使用DATETIME类型来存储时间 一般情况下最好在jdbc中使用getTimestamp()方法获取Timestamp格式的时间,然后在转化成Java的Date。如果遇到要在ResultSet 获取值为”或’0000-00-00 00:00:00′这样的数据时(rs.getDate(’gmt_sync’)或 rs.getTimestamp(’gmt_sync’)等类似方法),就会出现如下:java.sql.SQLException: Value ‘0000-00-00 00:00:00′ can not be represented as java.sql.Date;或是java.sql.SQLException: Cannot convert value ‘0000-00-00 00:00:00′ from column 12 to TIMESTAMP.
这是因为JDBC不能将’0000-00-00 00:00:00′转化为一个为一个java.sql.Timestamp,在Java中,想创建一个java.util.Date,使其值为 ‘0000-00-00′也是不可能的,最古老的日期应该是’0001-01-01 00:00:00′。
解决:
在url中加入zeroDateTimeBehavior=convertToNull 如:jdbc:mysql://10.2.225.97/c2c? zeroDateTimeBehavior=convertToNull这样在处理如上数据值时,将会返回null,这样就可以做相应的处理了。
分享到:
评论

相关推荐

    MySql 按时间段查询数据方法(实例说明)

    首先,我们必须了解MySQL中处理时间数据的函数。例如,`curdate()` 函数用于获取当前日期,而 `month()` 函数可以提取日期或时间字段中的月份部分。此外,`FROM_UNIXTIME()` 函数用于将UNIX时间戳转换为易读的日期...

    mysql 统计一天24小时数据默认补0SQL

    ### MySQL 实现一天24小时数据统计并默认补0的方法 在进行数据分析时,我们经常会遇到需要统计一天内每个小时的数据情况。为了确保统计数据的完整性,对于那些在某小时内无记录的情况,通常需要将该小时的数据设为0...

    Java实现批量向mysql写入数据的方法

    本文中提供了一个完整的示例代码,演示了Java实现批量向mysql写入数据的方法,包括JDBC连接mysql数据库、批量向mysql写入数据和基本的异常处理等操作。该示例代码可以作为Java程序设计的参考,帮助读者更好地理解...

    串口数据采集并自动写入MySQL数据软件

    当计算机的某个COM口有字符串数据进来时,自动触发事先设置好的字符串截取代码,处理后直接写入MySQL数据库某个数据表的一条新记录中,同时自动用一个时间字段记录下写入数据库的时间。 版本V2.0新增了可任意截取...

    mysql历史数据同步到clickhouse 已测试

    - **事务处理**: ClickHouse不支持事务,因此在数据同步过程中需要注意数据的一致性问题,尤其是在并发环境中。 - **错误检测与重试**: 实现错误检测机制,当同步失败时能够自动重试。 - **数据校验**: 同步完成后...

    mysql-oracle数据同步

    当业务发展需要将MySQL中的数据迁移到Oracle时,数据同步技术就显得尤为重要。 数据同步可以分为实时同步和批量同步。实时同步通常通过触发器、消息队列或者中间件实现,确保数据一旦在源数据库更新,目标数据库...

    C#在MySQL大量数据下的高效读取、写入详解

    在C#中与MySQL数据库进行大规模数据交互时,性能优化是关键,特别是在处理千万级别的数据。本文将探讨如何高效地读取和写入大量数据,主要分为三个步骤:解决读取问题、数据处理和数据插入。 ### 第一步:解决读取...

    mysql恢复数据常用方法

    通过上述步骤,可以有效地处理由于误操作导致的数据丢失问题。虽然备份是最可靠的数据保护手段,但在没有备份可用的情况下,利用binlog进行数据恢复是一种非常有用的备选方案。此外,为了提高数据恢复的成功率,建议...

    MySQL误操作后快速恢复数据的方法

    MySQL数据库在日常运营中起着至关重要的作用,存储着关键的业务数据。然而,数据库管理员或程序员有时可能会发生误操作,如不小心删除了错误的数据,这种情况可能会导致严重的后果,特别是当涉及线上环境的核心业务...

    解决mysql时间戳datatime存储四舍五入问题.docx

    在MySQL数据库中,时间戳(Timestamp)和日期时间(DateTime)是两种常见的日期和时间数据类型,用于存储和处理时间信息。在您的项目中遇到的问题是关于DateTime类型的字段在存储时出现了四舍五入的问题,这通常是...

    mysql百万级测试数据下载 300W条

    本文将围绕“mysql百万级测试数据下载 300W条”这个主题,深入探讨如何处理和利用这样的大数据量进行测试。 首先,`test.sql`文件是一个MySQL数据库的SQL脚本文件,通常包含创建表结构、插入数据等操作。在这个场景...

    mysql根据日志恢复数据详细步骤

    然而,在实际使用过程中,难免会遇到误删数据的情况,这时就需要通过MySQL提供的各种机制来恢复丢失的数据。本文将详细介绍如何利用MySQL的二进制日志(Binlog)来恢复丢失的数据,并通过具体案例进行说明。 #### ...

    mysql数据类型转换

    本文将详细介绍MySQL中的数据类型转换方法及其应用场景。 #### 二、MySQL数据类型转换概述 MySQL提供了多种方式来实现数据类型的转换,主要包括`CAST`函数、`CONVERT`函数以及直接使用算术操作等方法。下面我们将...

    SpringBoot定时任务实现Oracle和mysql数据同步

    在`syncData`方法中,我们将编写实现Oracle到MySQL数据同步的代码。数据同步通常涉及到数据库查询、数据转换以及数据插入等操作。这里我们可以使用JDBC或者ORM框架(如MyBatis)来操作数据库。 1. **Oracle数据库...

    使用LabVIEW操作ACCESS、MySQL、SQL server数据库实现按照时间段查询数据

    在LabVIEW中操作数据库,尤其是实现按时间段查询数据,需要借助特定的工具包。本教程主要涉及使用官方数据库工具包“Database Connectivity Toolkit”,该工具包包含29个函数,能够实现数据库连接、增删改查及数据...

    sql server数据导入mysql方案

    除了上述方法,还可以使用开源工具如Kettle(Pentaho Data Integration)和DataX,它们提供了更强大的ETL(抽取、转换、加载)功能,能够处理复杂的数据迁移场景,包括数据清洗、转换等步骤。 在进行数据迁移时,...

    mysql 千万数据表 t_order.zip

    在数据库管理领域,MySQL是一个广泛使用的开源关系型数据库系统,尤其在处理大量数据时,其性能和效率备受赞誉。本文将深入探讨如何管理和优化存储着千万级别数据的表,以"t_order"为例,该表可能存在于您提供的...

    mysql数据导入到Oracle中

    - **时间戳和日期处理**:MySQL和Oracle对日期时间类型的处理略有不同,需特别注意。 - **触发器和存储过程**:如果原MySQL中有自定义的存储过程或触发器,可能需要在Oracle中重新创建。 - **性能优化**:根据目标...

    mysql 百万级数据测试

    在IT行业中,数据库管理是至关重要的,特别是在处理大规模数据时。"MySQL 百万级数据测试"这个主题涉及到了在高容量数据环境下的数据库操作,尤其是如何高效地导入和管理大量数据。MySQL是一个广泛使用的开源关系型...

Global site tag (gtag.js) - Google Analytics