Having Challenges with Node.js Update SQL for Arithemetics


When I do this

update fasta_users set balance = balance + 7000 where id =1;

it works fine, No challenge, but when i want to work on it programmatically, it tells me amount has to be a column, i do not understand why it behaves so.

My code looks thus :

app.put('/api/v1/user/fundWallet',async function(req,res,next){
    try {

        if (!req.headers.authorization || !req.headers.authorization.startsWith('Bearer ') || !req.headers.authorization.split(' ')[1]) {
            return res.status(422).json({ message: 'Please Provide Token!' })

        var id = req.body.id;
        const amount = req.body.amount;
        if (!id) {
            return res.status(400).send({ error: true, message: 'Please provide ID' });
        dbConn.query(`update fasta_users set balance = balance + amount=${amount} where id =${id}`,function (error, results, fields) {
            if (error) throw error;
            return res.send({ error: false, data: results, message: 'users List.' });

    } catch (err) {

I do not understand why it behaves so. Please I do need guidance.Or Do I have to use a Stored procedure here?


Your code does not produce the same SQL as your test – it sends

update fasta_users set balance = balance + amount=7000 where id =1

(assuming the same values for amount and id as in your question).

Getting rid of the amount= should work.

Answered By – grahamj42

Answer Checked By – Willingham (AngularFixing Volunteer)

Leave a Reply

Your email address will not be published.