Prisma 创建数据时间丢失 8 小时:如何避免时区差异?

prisma 创建数据时间丢失 8 小时:如何避免时区差异?

Prisma 创建数据时间丢失 8 小时:背后的原因

在使用 Prisma 时,用户有时会遇到数据时间丢失 8 小时的情况。这似乎表明数据库的时区未正确设置。然而,在检查数据库时区后却发现一切正常。那么,是什么导致了这种差异呢?

时间存储约定

数据库不会保存时区信息。因此,需要约定好保存时间时应采用 UTC 还是本地时间。建议使用 UTC 时间,因为它方便转换。

数据转换

在将数据存储到数据库之前,必须将其从本地时间转换为 UTC 时间。在读取数据时,还需要进行相反的转换。此转换通常在服务端执行。

本地时间与 UTC 时间

对于面向用户的浏览器端来说,默认使用本地时间。因此,在将数据从浏览器传输到服务端时,需要判断该时间属于哪个时区,然后将其转换为 UTC 时间。

解决方法

要解决此问题,需要在浏览器端判断时区,并相应地转换时间。对于非用户指定的时间,可以将其替换为服务器当前时间,并使用 UTC 格式存储。

通过遵循这些步骤,可以确保 Prisma 创建数据时的时区正确,避免因这种差异而带来的混乱。

以上就是Prisma 创建数据时间丢失 8 小时:如何避免时区差异?的详细内容,更多请关注其它相关文章!