首页 > 解决方案 > 由于奇怪的原因节点模块(mysql2)每次抛出的类型错误

问题描述

我不明白它是如何工作的。我是 JS 的新手,但我不明白为什么总是打电话时:

function checkUserDb(msg) {
    dbContext.query('SELECT * FROM Users_Table WHERE Id = ?', msg.from.id, function(err, result){
        if (result.length > 0) return true;
        else {
            createUserDb(msg.from.id,msg.from.first_name + ' ' + msg.from.last_name)
            return false;
        }
    });
};

function createUserDb(userId, userName) {
    dbContext.query('INSERT Users_Table(Id,Username,Permision,Level,Upgrade,Experience,Wallet) VALUE (?,?,1,\'Ламер\',\'N/A\',0,0)',[userId,userName]);
}

抛出错误:

进程以代码 1 退出

未捕获的 TypeError:this.onResult 不是函数

它总是在找到一个单元格时抛出异常,即当 [Text Row] > 0 时(我在调试器中检查它有正确的数据)

示例:我有一个变量 Id (PK),我想通过SELECT一个单元格找到这个变量,并使用他的数据来做一些事情,比如 UPDATE 和 INSERT 查询(并在我的程序中继续它)。

一旦它工作并创建了一个单元格:

一旦它工作并创建了一个单元格

标签: javascriptmysqlsqlnode.jsnode-modules

解决方案


推荐阅读