Я хочу удалить эти скобки extra () в запросе sql с помощью этого фрагмента кода - PullRequest
0 голосов
/ 29 мая 2020

Из-за этой дополнительной круглой скобки я получаю следующую ошибку

code: 'ER_OPERAND_COLUMNS',
  errno: 1241,
  sqlMessage: 'Operand should contain 1 column(s)',
  sqlState: '21000',
  index: 0,
  sql: 'INSERT INTO orderedproducts (order_id, product_id, quantity) VALUES ((41, 1, 2), (41, 1, 3), (41, 1, 3))'
}

Я использую следующий код для создания этого запроса

let lastId = results.insertId

                    let orderedProductSql = 'INSERT INTO orderedproducts (order_id, product_id, quantity) VALUES (?)'

                    var testData = [
                        {
                            productId: 1,
                            quantity: 2
                        },
                        {
                            productId: 1,
                            quantity: 3
                        },
                        {
                            productId: 1,
                            quantity: 3
                        },
                    ]

                    let values = testData.reduce((o, a) => {
                        let ini = []
                        ini.push(lastId)
                        ini.push(a.productId)
                        ini.push(a.quantity)
                        o.push(ini)
                        return o
                    },[])

                    connection.query(orderedProductSql, [values], (err, results) => {
                        if (err)    {
                            return connection.rollback(_ => {
                                throw err
                            })
                        }

Как мне удалить эти дополнительные скобки или есть ли какой-нибудь другой метод, с помощью которого я могу это сделать?

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