Prisma 中带有时区列的时间戳
Timestamp with timezone column in Prisma
我正在评估 Prisma,我是一个完全的菜鸟...
- 我正在使用 Postgresql
- 我有以下模型定义
model Sth {
id Int @default(autoincrement()) @id
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
expiresAt DateTime?
}
createdAt
列转换为
createdAt | timestamp(3) without time zone | | not null | CURRENT_TIMESTAMP
因为我打算真正使用时间戳 - 我需要它们 timestamp with time zone
.
如何使用 Prisma 实现此目的?
立即编辑() > '2021-02-16':Prisma 现在具有“本地类型”
目前不支持 timestamptz
字段,因为 Prisma 会自动将您发送的时间戳转换为 UTC。将通过 this 请求在 Prisma 的进一步版本中提供支持。
作为解决方法,您需要将时间戳转换为特定的所需时区,因为 Prisma 会将其以 UTC 格式保存在数据库中。
对于我们这些生活在未来的人来说,现在可以通过 Prisma 的 'Native database type attribute'.
为 postgresql 保存带有时间戳和时区的记录
https://www.prisma.io/docs/reference/api-reference/prisma-schema-reference#postgresql-6
请注意,对于我的数据库,我必须将时区设置为 'UTC'
,以便 @default
将正确的时区设置为我想要的时区。
上面的示例带有 Native 数据库类型属性。
model Sth {
id Int @default(autoincrement()) @id
createdAt DateTime @default(now()) @db.Timestamptz(3)
updatedAt DateTime @updatedAt @db.Timestamptz(3)
expiresAt DateTime? @db.Timestamptz(3)
}
我正在评估 Prisma,我是一个完全的菜鸟...
- 我正在使用 Postgresql
- 我有以下模型定义
model Sth {
id Int @default(autoincrement()) @id
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
expiresAt DateTime?
}
createdAt
列转换为
createdAt | timestamp(3) without time zone | | not null | CURRENT_TIMESTAMP
因为我打算真正使用时间戳 - 我需要它们 timestamp with time zone
.
如何使用 Prisma 实现此目的?
立即编辑() > '2021-02-16':Prisma 现在具有“本地类型”
目前不支持 timestamptz
字段,因为 Prisma 会自动将您发送的时间戳转换为 UTC。将通过 this 请求在 Prisma 的进一步版本中提供支持。
作为解决方法,您需要将时间戳转换为特定的所需时区,因为 Prisma 会将其以 UTC 格式保存在数据库中。
对于我们这些生活在未来的人来说,现在可以通过 Prisma 的 'Native database type attribute'.
为 postgresql 保存带有时间戳和时区的记录https://www.prisma.io/docs/reference/api-reference/prisma-schema-reference#postgresql-6
请注意,对于我的数据库,我必须将时区设置为 'UTC'
,以便 @default
将正确的时区设置为我想要的时区。
上面的示例带有 Native 数据库类型属性。
model Sth {
id Int @default(autoincrement()) @id
createdAt DateTime @default(now()) @db.Timestamptz(3)
updatedAt DateTime @updatedAt @db.Timestamptz(3)
expiresAt DateTime? @db.Timestamptz(3)
}