Почему запрос на обновление не работает в этой функции? - PullRequest
1 голос
/ 11 июня 2019

Я хочу переключить статус активации компании в моем коде. Поэтому сначала я беру Activation_status, переключаю его, а затем запускаю запрос на обновление. Но это показывает, что con.query1 () не является функцией.

Я проверил все возможные ошибки, но не смог его найти.

Я искал на многих сайтах, но там написано, что это будет орфографическая ошибка.

var val;
app.post("/edit/company", (req, res) => {
  let comid = req.body.comid;
  let sql = "SELECT is_active from tblcompany where cid='" + comid + "'";
  let query = con.query(sql, (err, result) => {
    if (err) throw err;
    val = result[0].is_active;

    if (val == "1") val = 0;
    else val = 1;

    console.log("Value of Activation Status: " + val);
  });
  console.log("Value of activation status:" + val);
  console.log("Value of Company" + comid);

  let sql1 =
    "UPDATE tblcompany SET is_active=" + val + " where cid=" + comid + "";
  let query1 = con.query1(sql1, (err, result) => {
    if (err) throw err;
    console.log(result);
    // res.send(JSON.stringify(result));
  });
});

Ответы [ 3 ]

0 голосов
/ 11 июня 2019

Вы можете использовать только один запрос на обновление для переключения значения в поле is_active.

ОБНОВЛЕНИЕ tblcompany SET is_active = IF (is_active = 1, 0, 1) где cid = '"+ comid +"';

И

Нет функции как query1 с conn (conn.query1). Вы должны использовать ту же функцию запроса для выполнения SQL-запроса.

conn.query ("sql query", callbackFunction)

0 голосов
/ 11 июня 2019

Вы можете использовать:

UPDATE tblcompany
    SET is_active = 1 - is_active
    WHERE cid = ?;

? является заполнителем параметра .Вы должны научиться использовать параметры для передачи значений в запросы.

Вы также можете выразить это как:

UPDATE tblcompany
    SET is_active = NOT is_active
    WHERE cid = ?;
0 голосов
/ 11 июня 2019

Вы можете избежать проверки, просто используя SQL

  UPDATE tblcompany SET is_active =  case when is_active  = 1 then 0 else 1 end 
  WHERE ......

и вы должны использовать con.query () ..не query1

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