用 knex 新增 mysql 数据,如何生成 datetime 类型录入时间?

发布于 2022-09-06 20:54:16 字数 908 浏览 19 评论 0

我用下面方法创建数据,字段post_date会报无效的值

CREATE TABLE `evidence` (
  `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
  `post_date` datetime DEFAULT NULL,
  `post_type` text,
  `post_author` text,
  `post_title` text,
  `post_excerpt` text,
  `post_content` longtext,
  `comment_status` bigint(20) DEFAULT '1',
  `comment_count` bigint(20) DEFAULT '0',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4;

knex.js操作的mysql代码片段

knex('evidence').insert({
        post_date: moment().format('YYYY-MM-DD HH:MM:SS'),
        post_type: 'text',
        post_author: 'test_author',
        post_title: ctx.request.body.title,
        post_excerpt: ctx.request.body.excerpt,
        post_content: ctx.request.body.content,
        comment_status: 1,
        comment_count: 10
    })

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

小霸王臭丫头 2022-09-13 20:54:16
 `post_date` datetime 所以你的knex.schema的post_date也应该是dateTime类型
而你插入的时候moment().format('YYYY-MM-DD HH:MM:SS')是字符串类型,类型不匹配

参考http://blog.csdn.net/liuyueyi... dateTime类型

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文