如何更新数据库中的值

时间:2019-04-22 20:06:29

标签: mysql node.js

我想更新数据库中的值。 为此,我有一些代码:

 var mysql = require('mysql');
        var connection = mysql.createConnection({
            host: 'host',
            user: 'admin',
            password: 'pass',
            database: 'db'
        });
        // connect to database
        connection.connect(function (err) {
            if (err) {
                return err;
            }
            connection.query('UPDATE botrequests SET places_count = ? WHERE telegram_id = ?', [places_count - global.count, global.telegram_id],
                function (error, results, fields) {
                    if (error) throw error;
                    res.render('index.pug', {
                        results: results
                    });
                });
        });

因此,我有一个表botrequests,如果places_count等于global.count telegram_id来更新global.telegram_id的值>

出现错误

C:\Users\lesha\Desktop\pugbot\node_modules\mysql\lib\protocol\Parser.js:80
        throw err; // Rethrow non-MySQL errors
        ^

ReferenceError: places_count is not defined

不过表中肯定places_count。我的代码怎么了?

1 个答案:

答案 0 :(得分:2)

places_count在您的执行上下文中不是变量。

尝试:

connection.query('UPDATE botrequests SET places_count = places_count - ? WHERE telegram_id = ?', [global.count, global.telegram_id], ...)