保存和检索日期时间到 mysql 日期时间,它使用 TypeOrm,NestJs | 存储前一天的日期节点
Posted
技术标签:
【中文标题】保存和检索日期时间到 mysql 日期时间,它使用 TypeOrm,NestJs | 存储前一天的日期节点【英文标题】:saving and retrieving datetime to mysql date time, it stores previous day's date using TypeOrm, NestJs | Nodejs 【发布时间】:2021-08-19 10:27:42 【问题描述】:我正在尝试将pickup_time 存储在datetime 类型的mariadb 列中。 我的堆栈: NestJS(nodejs),mariadb 它保存前一天的日期,这里有一个例子:
插入:
"pickup_time": "2021-06-07 01:00:00.000",
得到这个:
"2021-06-06T20:00:00.000Z"
当我只添加这样的日期时:“2021-06-07”, 它工作正常并插入日期..“2021-06-07T00:00:00.000Z” 但我也希望能够存储时间
我确定这已经解决了,我找不到解决方案。非常感谢任何帮助
我有日期时间列,当我保存数据时,它被正确保存:2021-03-18 00:00:00
当我使用 typeorm 检索它时:2021-03-17T19:00:00.000Z
它返回的天数比存储的天数少。我知道这与时区有关,我已尝试将时区添加到 orm 配置中,但它不起作用,我能否将数据取回,因为它存储在数据库中。我该怎么做?
【问题讨论】:
查看phoenixnap.com/kb/change-mysql-time-zone @Grumpy 我有 datetime 列,当我保存数据时,它被正确保存:2021-03-18 00:00:00
当我使用 typeorm 检索它时:2021-03-17T19:00:00.000Z
它返回的日期比存储的日期少一天。我知道这与时区有关,我已尝试将时区添加到 orm 配置中,但它不起作用,我能否将数据取回,因为它存储在数据库中。我该怎么做?
【参考方案1】:
事实证明数据保存得很好,在检索时我们必须将其映射回我们的 localString
pickup_time: new Date(pickup_time).toLocaleString()
【讨论】:
以上是关于保存和检索日期时间到 mysql 日期时间,它使用 TypeOrm,NestJs | 存储前一天的日期节点的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 jdatechooser 从 mysql 数据库中保存和检索空日期