取出来的时候总是精确到了毫秒好象!
数据取出来总是有.0
例如
2009-01-01 11:11:11.0很讨厌啊!不知道有什么什么办法能把.0去掉.在执行sql的时候增加什么函数什么的?还是修改以下这个字段的属性?还是在连接db的时候设定什么就可以了?
数据取出来总是有.0
例如
2009-01-01 11:11:11.0很讨厌啊!不知道有什么什么办法能把.0去掉.在执行sql的时候增加什么函数什么的?还是修改以下这个字段的属性?还是在连接db的时候设定什么就可以了?
1。你用的什么工具?和下面一样也是mysql行命令?
2。你的数据在哪儿?表中?什么字段类型?mysql> select now();
+---------------------+
| now() |
+---------------------+
| 2009-06-30 23:47:28 |
+---------------------+
1 row in set (0.08 sec)mysql>
我用 mysql front 执行select now()结果是2009-07-01 08:06:31
2.我的数据在表里面,字段类型我要看看才知道家里没环境啊
555还以为这是个普遍问题呢。555
这个是baidu上一个问题啊我觉得跟我就是一个问题啊
这样话,说明不是MySQL本身问题,基本上有两个可能
1。MySQL和JAVA之间的联接设置,
2。java/JSP自身对日期时间的处理。你做如下检查。
1。看一下表中这个时间字段的数据类型。
2。在你的java中试一下 select now(); ,以断定是表中这个字段问题,还是从MYSQL来的都有问题。因为select now();已经和表无关了。
3。如果select now();也不正常,则在你的java中直接显示个java的datetime型数据看看是否正常,是不是你JSP本身显示所有时间都这个样。
%Y-%m-%d %H:%i:%s
那个字段的类型是 type datetime default 是0000-00-00 00:00:00
jsp肯定不是啊我以前也遇到过这个问题,但是总是有时候遇到有时候遇不到,当时的解决方法就是直接把.0在java里面subString去掉
1。看一下表中这个时间字段的数据类型。
2。在你的java中试一下 select now(); ,以断定是表中这个字段问题,还是从MYSQL来的都有问题。因为select now();已经和表无关了。
3。如果select now();也不正常,则在你的java中直接显示个java的datetime型数据看看是否正常,是不是你JSP本身显示所有时间都这个样。这些的结果是什么?
show variables like "datetime_format";
结果是
%Y-%m-%d %H:%i:%s
2.System.out.println(xx.queryForList("select now() "));
的结果竟然也是带.0的
[{=2009-07-07 23:18:57.0}]3.jsp肯定不是啊我以前也遇到过这个问题,但是总是有时候遇到有时候遇不到,当时的解决方法就是直接把.0在java里面subString去掉
show variables like "datetime_format";
结果是
%Y-%m-%d %H:%i:%s
2.System.out.println(xx.queryForList("select now() "));
的结果竟然也是带.0的
[{=2009-07-07 23:18:57.0}]3.jsp肯定不是啊我以前也遇到过这个问题,但是总是有时候遇到有时候遇不到,当时的解决方法就是直接把.0在java里面subString去掉
如果你是用到JSP的话,很容易解决的!(1)用标签<fmt:foratDate value="你要显示的时间数据" type="date"/>,这样就仅显示年月日。
此标签有多个属性,属性type有几种选择。这里就不详述了。
(2)记得引入标签库<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>希望能帮上楼主!
标签<fmt:formatDate value="。。" pattern="yyyy/MM/dd/HH.mm.ss">,这里只显示到秒,
毫秒pattern="yyyy/MM/dd/HH.mm.ss.SS(注意大小写)
应该能帮你除去最后的0,只能帮你解决表面问题了,哈
select @dt;
SELECT DATE_FORMAT(@dt,'%Y-%c-%d');
SELECT DATE_FORMAT(@dt,GET_FORMAT(DATE,'EUR'));
SELECT DATE_FORMAT(@dt,GET_FORMAT(DATE,'ISO'));