首页 > 解决方案 > NodeJs 将当前日期时间字段插入 MySQL 数据库

问题描述

我正在尝试将 DATETIME 字段插入到我的 MySQL 数据库中。

var dt = require('moment')().format('YYYY-MM-DD HH:mm:ss');
    pool.query(
      `insert into login(id, id_utente, data_login) values(NULL,?,?)`,
      [results[0].id],
      [dt],
      (error, results, fields) => {
      }
    );

我收到此错误:

C:\Users\tiger\Desktop\prova\REST_API_WITH_MYSQL-master\node_modules\mysql\lib\protocol\Parser.js:437
  throw err; // Rethrow non-MySQL errors
  ^TypeError: this._callback.apply is not a function

如果我尝试这段代码,一切都会好起来的:

pool.query(
      `insert into login(id, id_utente, data_login) values(NULL,?,"2021-01-27 00:00:00")`,
      [results[0].id],
      //[dt],
      (error, results, fields) => {
      }
    );

我做错了什么?

标签: javascriptmysqlnode.js

解决方案


您将参数放在 2 个单独的数组中。将您的参数放在同一个参数数组中。

 pool.query(
  `insert into login(id, id_utente, data_login) values(NULL,?,?)`,
  [results[0].id, dt],
  (error, results, fields) => {
  }
);

推荐阅读