You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用dayjs生成带6位微秒的PostgreSQL兼容时间戳格式?

问题解答

  1. 你提到的6位数字是微秒(microsecond),属于秒的小数部分,1微秒等于百万分之一秒,PostgreSQL默认的timestamp类型存储的时间精度就是到微秒级,因此会在秒后展示6位小数。
  2. 你之前用的格式符X对应Unix秒级时间戳(10位数字),不是秒的小数部分,要生成符合要求的格式,需要启用dayjs的AdvancedFormat插件后使用SSSSSS格式符来获取6位微秒,实现步骤如下:
  • 首先引入并注册AdvancedFormat插件(默认dayjs不包含该高级格式能力):
import dayjs from 'dayjs'
import advancedFormat from 'dayjs/plugin/advancedFormat'

dayjs.extend(advancedFormat)
  • 修改你的日期生成函数,将格式字符串替换为YYYY-MM-DD HH:mm:ss.SSSSSS:
const generateCurrentDateString = () => {
  return dayjs().format('YYYY-MM-DD HH:mm:ss.SSSSSS')
}

修改后输出的格式就和你Ruby应用存入PostgreSQL的日期格式完全一致。

内容的提问来源于stack exchange,提问作者Alexander Solonik

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 22:24:03