nestJs+mysql2 查询时间比数据库中存储时间少8小时问题

在NestJS应用中使用mysql2连接数据库时,查询结果显示的时间比数据库存储时间少8小时。原因是数据库时区与系统时区不一致。为解决此问题,可以在数据库连接配置中设置`timezone`为'Z'(东八区,中国时区)或'UTC'(国际时区)。设置'Z'可以使系统时间与数据库时间同步,而'UTC'会将时间转换为国际标准时间。
摘要由CSDN通过智能技术生成

nest连接mysql数据库,查询时间的时候,发现查询到的时间要比数据库中存储的时间少8个小时。
如下图中左边我们的数据存储的是6月8日 6:00 但是我们查询到的数据却是6月7日23:00。中间差了8个小时。
在这里插入图片描述
相应的,如果要向数据库中插入一个时间,同样回比需要存储的时间多8小时。
这是因为数据库的时区和我们系统使用的时区是不一样的,中间差了8个小时,解决方式:
在数据库连接信息的地方加上时区的timezone配置:

TypeOrmModule.forRoot({
   
  type: 'mysql',
  host: 'localhost'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值