0 0

mysql datetime字段'0000-00-00'处理出错5

mysql 数据库,有一个字段是datetime类型,被书上值'0000-00-00' jdbc处理resultSet时间,报告错误:
java.sql.SQLException: Cannot convert value '0000-00-00 00:00:00' from column 4 to TIMESTAMP.
怎么解决?
DAO 
2010年5月06日 17:21

5个答案 按时间排序 按投票排序

0 0

在数据库连接后面加上
"jdbc:mysql://192.168.7.178:3306/cy?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true"即可

2010年5月07日 09:31
0 0


还可以:

url = "jdbc:mysql:///test?zeroDateTimeBehavior=convertToNull";

url = "jdbc:mysql:///test?zeroDateTimeBehavior=exception";



exception  就是现在的,抛异常

convertToNull  顾名思义,就是 转换成null,也即是Date t = getDate(); t是null

2010年5月06日 17:57
0 0

这样写:

url = "jdbc:mysql:///test?zeroDateTimeBehavior=round";


MySQL使用全由0组成的DATETIME值来表示无效日期。

2010年5月06日 17:45
0 0

你是将 datetime 转为 timestamp?

2010年5月06日 17:25
0 0

sql里面日期最小值应该是:1900-1-1 00:00:00吧
不可以比这个值再小了,再小的话就报错

2010年5月06日 17:25

相关推荐

    mysql容易出错的地方

    - 支持更多 MySQL 特性和事务处理。 - **PDO 优点**: - 支持多种数据库驱动; - 提供统一的 API 接口,便于迁移和扩展。 #### 3. 忽视用户输入的安全处理 - **安全风险**: - SQL 注入攻击:通过恶意输入...

    vs2010连接mysql数据库方法

    - **命令**:`mysql> create table testtable (id int(3) auto_increment not null primary key, time datetime, name char(10) not null, address varchar(20), year date, s1 char(11), s2 int default '1');...

    vs2010连接mysql数据库方法.pdf

    #include "winsock.h" // 如果编译出错,则把该行放到#include "mysql.h"之前 #pragma comment(lib,"libmysql.lib") ``` **注意事项**:如果已经在“附加依赖项”中添加过`libmysql.lib`,则无需在此处重复添加...

    MYSQL

    13.4.2 怎样修复表 13.4.3 表优化 13.5 日志文件维护 14 为MySQL增加新函数 14.1 增加一个新的用户定义函数 14.1.1 UDF调用顺序 14.1.2 参数处理 14.1.3 返回值和出错处理 ...

    vs2010连接mysql数据库方法参照.pdf

    #include "winsock.h" // 如果编译出错, 则把该行放到 #include "mysql.h"之前 #pragma comment(lib,"libmysql.lib") ``` 如果已经在附加依赖项中添加了 `libmysql.lib`,则不需要重复添加。 #### 二、数据库操作...

    MySQL中文参考手册.chm

    14.1.2 参数处理 14.1.3 返回值和出错处理 14.1.4 编译并安装用户定义函数 14.2 增加一个新的原生(native)函数 15 为MySQL增加新过程 15.1 analyse过程 15.2 编写一个过程 ...

    MySQL中文参考手册

    o 5.6 怎样处理没有提交/回卷(COMMIT / ROLLBACK) * 6 MySQL 存取权限系统 o 6.1 权限系统做什么 o 6.2 MySQL用户名和口令 o 6.3 与MySQL服务器连接 o 6.4 使你的口令安全 o 6.5 MySQL 提供的权限 o 6.6 ...

    MySQL数据库开发规范方案1.3.doc

    《MySQL数据库开发规范方案1.3》是一份详尽的指南,旨在规范平安金融科技在使用MySQL数据库时的设计、命名和操作行为。以下是该规范的主要内容: 1. **命名规范** - **总则**:数据库对象名应由小写字母、数字和...

    MySQL学习笔记

    需要注意的是,这种方式容易出错,因为直接操作表可能会导致某些字段未被正确设置,比如`ssl_cipher`字段。 ```sql INSERT INTO mysql.user (Host, User, Password, Select_priv) VALUES ('%', 'hzy', PASSWORD('...

    深入ORACLE迁移到MYSQL的总结分析

    数据库的表结构问题:数据类型不同需要解决varchar2——varchar、number—–int、date—-datetime,建表的sql语句字段默认值、注释怎么解决。2. oracle中没有所谓的敏感字段,可是mysql表中的敏感字段有好多。当时...

    2021春招MySQL高频面试题.pdf

    - **易于维护**:自动递增减少了手动分配主键的工作量,降低了出错的可能性。 - **稳定性**:自增列一旦被分配就不会改变,确保了数据的一致性和稳定性。 #### 3. 触发器的作用是什么? 触发器是一种特殊的存储...

    Oracle到mysql转换的问题总结.docx

    - `DATE`在Oracle和MySQL中都是日期类型,但在MySQL中,`DATETIME`可以存储时间部分,而Oracle的`DATE`也包含了时间信息。 2. **SQL语法差异**: - Oracle字符串使用单引号,而MySQL接受单引号和双引号。 - ...

    SQL 安装过程及实例展示

    - 如果需要定义一个只包含年份和月份的DATE类型字段,可以考虑使用MySQL中的`YEAR`或`DATETIME`类型来实现,因为标准的DATE类型总是包含年、月、日三个部分。 5. **字符串大小比较**: - 在SQL中,字符串是可以...

    PHP+MYSQL留言本系统

    - `id`:主键,自增长的整型字段,用于唯一标识每条记录。 - `name`:留言者的姓名,长度最大为255个字符的字符串类型。 - `text`:留言内容,文本类型,长度不限。 - `datetime`:留言时间,日期时间类型,记录...

    MySQL查询两个日期之间记录的方法

    - **时间部分**:如果`createDate`字段包含时间部分,`BETWEEN`会考虑时间,这意味着`'2022-01-01 00:00:00'`到`'2022-01-02 00:00:00'`将不包括`'2022-01-02'`这一天的00:00:01及以后的时间。若要包含整天,需将...

    浅谈MySQL数据库中日期中包含零值的问题

    设置这两个变量后,如果你尝试插入包含零值的日期,如"2016-12-00",MySQL会返回错误,例如 `ERROR 1292 (22007): Incorrect datetime value: '2016-12-00' for column 'log_tm' at row 1`,从而避免了无效数据的...

    PHP+Mysql自动生成表单.docx

    在Web开发中,创建大量表单是一项繁重且容易出错的任务。通过自动生成表单,我们可以显著提高工作效率。本文将详细介绍如何使用PHP与MySQL来实现这一目标。 首先,我们需要从MySQL数据库获取表的结构信息。通过执行...

    最新php留言板

    3. **留言时间 msgdate**:DATETIME类型,用于记录留言的具体时间。 4. **电子邮件 email**:VARCHAR类型,最多40个字符。 5. **留言内容 msg**:TEXT类型,用于存储较长的留言文本。 此外,根据实际需求,还可以...

    C#生成IBatisNet实体和XML配置文件

    1. 数据类型转换:确保C#类型的映射正确无误,例如,MySQL的DATE类型可能需要映射为C#的DateTime类型。 2. 主键处理:识别出数据库表的主键字段,并在实体类和XML配置文件中进行标记。 3. 自动增长字段:处理标识...

Global site tag (gtag.js) - Google Analytics