Вложенные запросы не вызываются в MariaDB с использованием nodeJS - PullRequest
0 голосов
/ 10 декабря 2018

Это мой первый проект, использующий MySQL и NodeJS, я привык к Mongo, поэтому я мог бы сделать здесь что-то глупое.Локально все работает нормально (с использованием MySQL), но когда я развертываю следующий код на своем хостинге (который использует MariaDB), в таблицу вставляется только родительский запрос (приводит).Другая таблица остается пустой.Другая проблема заключается в том, что у меня нет доступа к журналам NodeJS при его развертывании, но, насколько я могу судить, вложенные запросы никогда не вызываются.

var mysql     = require('mysql');

global.db     = mysql.createPool({
  host      : 'localhost',
  user      : 'client',
  password   : '******',
  database   : 'db'
});

router.post('/', function(req, res){
    const d     = req.body
    let subscribe = (d.subscribe ? 1 : 0)

    global.db.getConnection((err, conn) => {
        if (err) {
            res.end(JSON.stringify(err));
        } else {

                let lead    = [null, d.voornaam, d.achternaam, d.email, d.postcode, d.opmerkingen, d.soort, subscribe]
                let sql     = 'INSERT INTO leads VALUES ?';
            conn.query(sql, [[lead]], (err, results) => {
                if (err) {
                    res.end(JSON.stringify(err));
                    conn.release();
                } else {
                    const lead_id = results.insertId
                    d.types.forEach(w => {
                        let wens = [null, lead_id, w.woningType, w.slaapkamers, w.prijs, w.oplevering]
                        let sql     = 'INSERT INTO wensen VALUES ?';
                        conn.query(sql, [[wens]], (err, results) => {
                            if(err) {
                                res.end(JSON.stringify(err));
                                conn.release();
                            }
                        })
                    })

                    res.end('True');
                    conn.release();
                }
            })
        }
    })
});

1 Ответ

0 голосов
/ 10 декабря 2018

Проверьте синтаксис.Примечание примечание:

'INSERT INTO leads VALUES (?)'

Неужели вам это не удалось сказать?

if (err) { res.end(JSON.stringify(err)); ... }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...