当前位置:   article > 正文

数据库传时间格式出错(已解决)_oceanbase导出sql时时间格式不对

oceanbase导出sql时时间格式不对

一、我遇到的问题

我在做毕业设计时遇到的这个问题,时间在数据库内显示的格式还是正确的(yyyy-mm-dd hh:mm:ss),如图

在这里插入图片描述
而到了前端却变成了:
在这里插入图片描述
这可真是一个难题啊!

二、解决的办法

我在网上搜索前辈遇到这种问题的解决办法,有好的说法,我一一亲自尝试,还是没有用,还有说是时区的问题,说什么加8就可以了,没用!!!

解决办法一:
在连接数据库的地方添加一行dateString:true,让数据带格式传到前端。
在这里插入图片描述
添加后:
在这里插入图片描述
这就正常了嘛!

解决办法二:
通常我们在数据库里设置时间的类型是 datetime,在这里我们可以将时间的数据类型修改为bigint:
在这里插入图片描述
在数据库显示为:
在这里插入图片描述
这里大家可能会有疑问,这还是时间吗?没错,是的,只是以毫秒的形式显示,在前端显示需要进行一些计算:

 if (value && value.data && value.data.length) {
 
         let i = value.data.length - 1;
          for (let item of value.data) {
            const d = new Date(Number(item.time));
            this.xAxis[i] = d.getHours() > 9 ? d.getHours() : '0' + d.getHours();
            this.xAxis[i] += ":" + (d.getMinutes() > 9 ? d.getMinutes() : '0' + d.getMinutes());
            this.xAxis[i] += ":" + (d.getSeconds() > 9 ? d.getSeconds() : '0' + d.getSeconds());
            console.log(d);
       
            i--;
          }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

结果:
在这里插入图片描述
如果想要yyyy-mm-dd hh:mm:ss格式,只需要toLocaleString()一下就可以了。

到这就全部结束了,终于把问题解决了。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/536164
推荐阅读
相关标签
  

闽ICP备14008679号