DEBUG вставка пост-запроса SQL с express - PullRequest
0 голосов
/ 04 марта 2020

Hello :), как вы видите в заголовке, я использую MYSQL с express.

Когда я пытаюсь запросить POST, я получаю эту ошибку ER_BAD_FIELD_ERROR: Unknown column '$1' in 'field list'

Я знаю, что речь идет о моих столбцах в запросе, но я не знаю, где ...

Или речь может идти о почтовых запросах в моем JSON?

Это мой маршрутизатор и запрос:

router.post("/user", (req, res) => {
  const sql = `
  INSERT INTO users (nationalcode, stockcode, firstname, lastname, isenable,contractnumber, archive, detail, birthdate,  offlineusername)
  VALUES
  ($1, $2, $3, $4, $5, $6,$7,$8,$9, $10)
  `;

  const {
    nationalcode,
    stockcode,
    firstname,
    lastname,
    isenable,
    contractnumber,
    archive,
    detail,
    birthdate,
    offlineusername
  } = req.body;

  db.query(sql, [nationalcode,
    stockcode,
    firstname,
    lastname,
    isenable,
    contractnumber,
    archive,
    detail,
    birthdate,
    offlineusername
  ], function (err, result) {
    if (err) throw err;
    console.log("Number of records inserted: " + result.affectedRows);
  });
  console.log(req.body);
});

И моя схема:

CREATE TABLE users (
  id INT PRIMARY KEY AUTO_INCREMENT,
  nationalcode INT NOT NULL UNIQUE,
  stockcode VARCHAR(255),
  firstname VARCHAR(255) NOT NULL,
  lastname VARCHAR(255) NOT NULL,
  isenable bool,
  isonline bool,
  contractnumber VARCHAR(255),
  archive numeric,
  detail VARCHAR(255),
  birthdate varchar(255),
  offlineusername varchar(225),
  created_at TIMESTAMP
);

ALTER TABLE users ALTER COLUMN isenable SET DEFAULT false;
ALTER TABLE users ALTER COLUMN isonline SET DEFAULT false;

1 Ответ

0 голосов
/ 04 марта 2020

Вы прошли Неверные значения (1, 2, 3, 4, 5, 6, 7, 8, 9, 10); в Sql Запрос.

Решение 1. Сначала проверьте свои значения (?,?,?,? .....). В соответствии со схемой DataType затем передайте его. После этого измените или измените функцию обратного вызова Db.Query (). и затем выполните запрос. Еще один простой способ: во-первых, запустите запрос вставки PHPMyAdmin вручную. И после этого попробуйте в редакторе

вы можете go по этой ссылке https://github.com/mysqljs/mysql#readme. для лучшего понимания. Надеюсь, что это может помочь вам в вопросе.

Снимок экрана Помощь для решения проблемы. enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...