JAVA连接MySQL数据库,在操作值为0的timestamp类型时不能正确的处理,而是默认抛出一个异常,就是所见的:java.sql.SQLException: Cannot convert value '0000-00-00 00:00:00' from column 7 to TIMESTAMP。这一问题在官方文档中有详细说明,详见如下链接:
http://bugs.mysql.com/bug.php?id=19274
http://dev.mysql.com/doc/refman/5.5/en/connector-j-installing-upgrading.html
在JDBC连接串中有一项属性:zeroDateTimeBehavior,可以用来配置出现这种情况时的处理策略,该属性有下列三个属性值:
l exception:默认值,即抛出SQL state [S1009]. Cannot convert value....的异常;
l convertToNull:将日期转换成NULL值;
l round:替换成最近的日期即0001-01-01;
因此对于这类异常,可以考虑通过修改连接串,附加zeroDateTimeBehavior=convertToNull属性的方式予以规避,例如:
jdbc:mysql://localhost:3306/mydbname?zeroDateTimeBehavior=convertToNull
从另一个层面讲,这类异常的触发也与timestamp赋值的操作有关,如果能够在设计阶段和记录写入阶段做好逻辑判断,避免写入 '0000-00-00 00:00:00'这类值,那么也可以避免出现 Cannot convert value '0000-00-00 00:00:00' from column N to TIMESTAMP的错 误。
分享到:
相关推荐
* JDBC 的基本操作:加载数据库驱动、连接数据库、创建 Statement 对象、执行 SQL 语句、处理结果集等。 四、数据库设计 * 数据库设计是指根据具体的业务需求设计和创建数据库的过程。 * 数据库设计的步骤:需求...
2. **JDBC连接数据库**: - 使用Java的JDBC API,可以连接到数据库并执行SQL语句。 - 首先,需要加载数据库驱动(如`Class.forName("com.mysql.jdbc.Driver")`),然后通过`DriverManager.getConnection()`建立...
根据给定的文件信息,以下是关于“Flex连接数据库的三种方法”的详细知识点: ### Flex连接数据库的方法概述 Flex是Adobe公司推出的一种用于构建高性能、高交互性的RIA(Rich Internet Applications)的应用程序...
5. **JDBC连接数据库**: - **数据库驱动**:确保引入了对应数据库的JDBC驱动,例如MySQL的`mysql-connector-java`库。 - **建立连接**:使用`DriverManager.getConnection()`方法创建数据库连接。 - **预编译SQL...
在IT行业中,数据库的数据迁移是一项常见的任务,尤其是在不同的数据库系统之间。本话题聚焦于如何使用JAVA来实现SQL Server 2000中的数据导出并导入到MySQL的过程。这是一个涉及多平台兼容性和数据转换的问题,通常...
从 SQL Server 数据库到 MySQL 数据库的转换操作需要经过多个步骤,包括准备工作、连接数据库、数据类型映射、数据转换、数据验证等。通过使用 Kettle,我们可以快速地完成数据库转换,提高开发效率和数据质量。
开发者需要编写SQL查询来提取所需的数据,然后通过JDBC的ResultSet对象来遍历并处理这些结果。 程序的流程可能如下: 1. **连接数据库**:使用JDBC的`DriverManager.getConnection()`方法,提供数据库URL、用户名...
- 数据导入导出:支持从文件导入数据到数据库,或将数据库数据导出为文件 - 数据同步:比较不同数据库或表之间的差异,并进行同步 - 数据备份:定期备份数据库,确保数据安全 通过学习上述内容,开发者可以熟练...
本篇将详细讲解如何使用JDBC连接程序来实现不同数据库间的数据迁移,以SqlServer到Oracle为例。 首先,JDBC(Java Database Connectivity)是Java平台中用于与各种数据库交互的一组接口和类。它提供了标准化的方式...
本主题主要聚焦于如何使用pgAdmin数据库驱动JAR文件以及与Hibernate框架进行数据连接。 首先,我们来了解`postgreAdmin`(pgAdmin)。pgAdmin是一款专为PostgreSQL设计的图形界面管理工具,它提供了丰富的功能,...
1. **JDBC连接**: 数据库操作的第一步是建立与服务器的连接。JAVA通过Java Database Connectivity (JDBC) API来实现这一点。对于SQL Server,我们可以使用Microsoft的JDBC驱动(mssql-jdbc),对于MySQL,我们可以...
在IT领域,尤其是在数据库编程中,Java Database Connectivity (JDBC) 是一个至关重要的接口,它允许Java应用程序连接到各种类型的数据库。"JDBC.rar_MYSQL_MYSQL 数据类型_jdbc_jdbc mysql" 这个压缩包文件显然聚焦...
以上内容详尽解释了标题和描述中提及的技术点,包括Java应用打包成.exe、使用JDBC连接不同数据库以及处理日期时间的转换。在实际开发中,掌握这些技能对于构建跨平台的Java应用和有效地与数据库交互至关重要。
2. 获取数据库连接:使用DriverManager.getConnection()方法连接数据库。 3. 执行SQL语句:通过Statement或PreparedStatement对象执行DML、DDL或DCL语句。 4. 获取查询结果:对于查询操作,使用ResultSet对象获取和...
这里定义了主数据源`master`和从数据源`slave`,并配置了相应的数据库连接信息。 3. 自动创表:ShardingJDBC提供了自动创建分片表的能力。在启动时,根据配置的规则,ShardingJDBC会自动创建对应的分片表。不过需要...
- JDBC(Java Database Connectivity)是Java中用于连接数据库的标准API,使得Java应用程序可以与各种类型的数据库进行交互。 - "clickhouse-jdbc-master"是Clickhouse的JDBC驱动源码,它实现了JDBC规范,让Java...
- 构建Web数据库体系架构:利用Tomcat作为Web服务器,Eclipse作为开发平台,创建基于JSP的前端应用程序,并通过JDBC连接后端数据库。最终目标是在浏览器上显示连接成功的页面。 #### 二、实验内容 1. **总体功能...
- 实现数据库查询逻辑,例如使用JDBC连接SQL Server,执行SQL语句,遍历结果集,将每条记录转换为`NoticeInfo`对象并添加到`ArrayList`中。 - 返回`ArrayList`或`NoticeInfo`数组给Flex客户端。如果返回`ArrayList...
4. **JDBC连接数据库基础** - Java通过Java Database Connectivity (JDBC) API与MySQL进行交互。首先需要添加MySQL JDBC驱动到项目类路径中。 - 连接数据库的步骤: - 加载驱动:`Class.forName(...