为啥我从oracle数据库中读取出时间的格式是这样的:2000-01-01 00:00:00.0
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥我从oracle数据库中读取出时间的格式是这样的:2000-01-01 00:00:00.0相关的知识,希望对你有一定的参考价值。
参考技术A mysql 的时期格式可以直接插入字符串,不过要符合这种格式 2000-01-01 00:00:00
把你的字符串弄成这种样子可以直接存进去了
INSERT INTO `table_name` (`date`) VALUES ('2000-01-01 00:00:00');
"incorrect date value": 不正确的日期值.
有时间字符串输入格式是
2000-1-1
可以按以下方式处理
$strDate = '2000-1-1';
$arr = explode('-',$strDate);
// 按 "-" 分隔成数组,也可以是其它的分隔符
$time = mktime(0,0,0,$arr[1],$arr[2],$arr[0]);
// 根据数组中的三个数据生成UNIX时间戳mktime(时,分,秒,月,日,年)
$fmtDate = date('Y-m-d H:i:s', $time);
// 按Y-m-d H:i:s(年-月-日 时:分:秒)格式化
经过以上4行代码;
可以把字符串 $strDate (2000-1-1)
转换成 $fmtDate (2000-01-01 00:00:00)这种格式.
够详细了吧?
追问
是很详细,但是数据库中的原始数据是2000-01-01 00:00:00,我在郁闷为什么我用java代码读取出来后面就多出一个.0
本回答被提问者采纳 参考技术B 原始数据是?追问数据库中的数据是2000-01-01 00:00:00,然后我读取出来显示后面就多出来一个.0
为啥存到数据库里面是乱码
随便写了个JAVA程序 . 数据库是MYSQL 5程序全部使用UTF-8格式.. 准备存到数据库的前一步 打印出来还是正常的中文 . 存进去就看见是 "???" 一大堆问号了. 我在程序里面写有filter.数据库我也重装过了. 还是一样 ..不知道还漏掉哪出问题了
你要保证几个地方的编码格式一致,MySQL,插入时的编码格式。页面的编码格式。 而你的这中情况就是,插入时的编码格式跟数据库的编码格式不一致。。。 参考技术A 编码有问题,可以转变编码gb2312试试。不过,建议你在java里面设置成utf8编码与数据库一致,这样就不用其他编码了。 参考技术B 在cmd进入mysql.连接以后进入库再进入表,出现乱码后,接着输入:set names gbk;(声明一下字符集),再重新进入表OK了,解决问题请点个赞 参考技术C 你的数据库用的是什么编码?默认的?
以上是关于为啥我从oracle数据库中读取出时间的格式是这样的:2000-01-01 00:00:00.0的主要内容,如果未能解决你的问题,请参考以下文章
为啥我从Access数据库输出来的时间插入到SQL server 数据库后 2015.08.30 01:33:45 时间01就变1了