discord. js лучше-sqlite3 добавление фактически не добавляет результат из предыдущего const - PullRequest
0 голосов
/ 17 января 2020
if (command == "tgive") {
      //Get their current balance
    const grab = sql.prepare(`SELECT bal FROM ${args[1]}`).get();
    //Grab the value from the first input after the second. Ex: eco tgive 5 Juliana
    const pointsToAdd = parseInt(args[0]);
    //Add the two values from the database and the args[0] input
    const result = +grab.bal + +pointsToAdd;
    //Replace the curret value from column bal in table ${args[1]}, with the const result
    sql.prepare(`REPLACE INTO ${args[1]} (bal) VALUES ('${result}');`).run();
    message.channel.send(`You have ${grab.bal}`);

}
});

Внутри базы данных "Джулиана" значение столбца bal равно 420, однако всякий раз, когда я запускаю эту команду со значением 5, я получаю You have 420 вместо You have 425, что означает, что команда не добавила значение из const result

1 Ответ

0 голосов
/ 17 января 2020
const grab = sql.prepare(`SELECT bal FROM ${args[1]}`).get();

Когда эта строка кода выполняется, она извлекает значение из базы данных и создает копию . Это означает, что при обновлении базы данных значение grab не равно.

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

...