急!!mysql中日期字段为何读不出来?
此时向表中插入一条记录,如果不写入此日期字段任何值,也就是使用他的默认值'0000-00-00 00:00:00'
那么在java中获取此记录,无论使用rs.getDate()、rs.getObject()、rs.getTimestamp()、等都报错。
错误信息为:
Value '0000-00-00' can not be represented as java.sql.Timestamp: Value '0000-00-00' can not be represented as java.sql.Timestamp
如果向此字段写入一个正常的日期读取出就不会报错.
由于此字段为非必须字段,所以如果在用户不选择写入,那么必须写入一个默认值。但现在写入一个默认值0000-00-00 00:00:00 用java就读不出来。为什么呢?
由于系统要求统计性,必须使用日期timestamp类型字段。本来一直使用long型就没这问题。
各位使用mysql碰到过这个问题吗?我用的是mysql5.0.
急!!!啊!
相关推荐
MySql用DATE_FORMAT截取DateTime字段的日期值
MySql截取DateTime字段的日期值可以使用DATE_FORMAT来格式化,使用方法如下
MySQL 查询某个字段不重复的所有记录
假设现在有如下N条记录 表明叫book id author title 1 aaa AAA 2 bbb BBB 3 ccc CCC 4 ddd DDD 5 eee AAA 现在想从这5条记录中查询所有title不重复的记录 select distinct title,author from book这样是不可以的 因为distinct只能作用于一个字段 想请教应该怎么写 答案: 代码如下:select a.* from book a right join ( select max(id) id from book group by title) b on b.id = a.id where
mysql记录根据日期字段倒序输出
我们知道倒序输出是很简单的 select * from table order by id desc 直接这样就可以 那么现在的问题在于日期字段怎么来倒序输出 这里我们用到cast()来将指定的字段转换为我们需要的类型 如下是实际项目中的sql语句 select * from water where phoneNumber=@phoneNumber order by cast(date as datetime) desc 我们说学而不思则罔,我们来思考下深层次的内容。 经过查阅资料得知类型的转换有两种方式 1.cast()方法 2.convert()方法 使用格式 1.
详解Mysql中日期比较大小的方法
主要介绍了Mysql中日期比较大小的方法,需要的朋友可以参考下
sqlserver中日期型字段设默认值
sqlserver中日期型字段设默认值默认值


Web 开发
