NodeJS MYSQL запрос на удаление - PullRequest
0 голосов
/ 19 июня 2019

Я пытаюсь удалить строку в таблице MYSQL из маршрута NodeJS. Запрос работает сам по себе, когда я запускаю его в MySQL Workbench. При выполнении из узла строка не удаляется. Я не получаю никаких сообщений об ошибках ни на сервере, ни на стороне клиента. Вот код:

router.post('/bid_delete', async (req, res) => {
 let bid_no = req.body['bid_no']
 let qrBids= "SET SQL_SAFE_UPDATES = 0; DELETE FROM bids_hdr WHERE 
 bid_gen_id ='" + bid_no + "';"  
 await pool.query( qrBids, (err, result) => {
  if (err) {
    res.send(err)
  } else {
    res.json({success : true})
  }  
 });  
})

Заранее спасибо за любые рекомендации.

Ответы [ 2 ]

1 голос
/ 19 июня 2019

Do SET SQL_SAFE_UPDTES = 0; в отдельном запросе.

И использовать заполнитель вместо конкатенации для подстановки переменной в запрос.

router.post('/bid_delete', async (req, res) => {
 let bid_no = req.body['bid_no']
 let qrBids= "DELETE FROM bids_hdr WHERE bid_gen_id = ?"  
 await pool.query( "SET SQL_SAFE_UPDATES = 0");
 await pool.query( qrBids, [bid_no], (err, result) => {
  if (err) {
    res.send(err)
  } else {
    res.json({success : true})
  }  
 });  
})
0 голосов
/ 19 июня 2019

Попробуйте передать параметр как есть, например.

let qrBids= "SET SQL_SAFE_UPDATES = 0; DELETE FROM bids_hdr WHERE bid_gen_id = '1';"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...