最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

Mysql的请求返回undefined

IT培训 admin 5浏览 0评论

Mysql的请求返回undefined

所以我编码节点JS的程序,我使用的MySQL。

我将请求发送到我的数据库,而应返回"Null"但每次我得到"undefined",我不明白为什么。我看到堆栈溢出一些答案,但我不理解他们。

这里是我的功能:

async function checkKey(key) {
    var activated = "";
    var sqlcheck = "SELECT activated from authentification where discord_key = ?";
    console.log("in function");
    await DB.query(sqlcheck, [key], function (err, result) {
        if (err) throw (err);
        console.log("test");
        console.log(result[0].customerID);
        activated = result[0].customerID;
    });
    if (activated == "Null") {
        return ("NULL");
    } else {
        return ("used");
    }
}

console.log(result[0].customerID);返回"undefined"

我把它在这一刻另一个功能:

if (checkKey(key) == "NULL") {
    try {

是否有可能等待功能"checkkey"继续之前完成?

这是我的日志:

logged in as ${client.user.tag}!
in function
${message.author.tag} - inputted an used key. key : ${key}
test
undefined

它应该说:

logged in as 
in function 
test
undefined
${message.author.tag} - inputted an used key. key : ${key}

主要功能继续而不检查,如果函数结束运行。

非常感谢您的帮助!

回答如下:

if (activated == "Null")

NULL是不是一个字符串,它是SQL语言的一个特殊值,表示该值是UKNOWN,在不确定等字样。

当你的数据库驱动程序从数据库中检索NULL值,它把它转换成任何对应于您正在使用的计算机语言,这在javascript将是一个NULL变量undefined概念。

你可以简单地改写这个条件的布尔检查:

if (!activated)

这将赶上情况activated是一个空字符串,不定值,一个假布尔值,而数字0

如果你想允许0,则:

if (activated !== 0)

Mysql的请求返回undefined

所以我编码节点JS的程序,我使用的MySQL。

我将请求发送到我的数据库,而应返回"Null"但每次我得到"undefined",我不明白为什么。我看到堆栈溢出一些答案,但我不理解他们。

这里是我的功能:

async function checkKey(key) {
    var activated = "";
    var sqlcheck = "SELECT activated from authentification where discord_key = ?";
    console.log("in function");
    await DB.query(sqlcheck, [key], function (err, result) {
        if (err) throw (err);
        console.log("test");
        console.log(result[0].customerID);
        activated = result[0].customerID;
    });
    if (activated == "Null") {
        return ("NULL");
    } else {
        return ("used");
    }
}

console.log(result[0].customerID);返回"undefined"

我把它在这一刻另一个功能:

if (checkKey(key) == "NULL") {
    try {

是否有可能等待功能"checkkey"继续之前完成?

这是我的日志:

logged in as ${client.user.tag}!
in function
${message.author.tag} - inputted an used key. key : ${key}
test
undefined

它应该说:

logged in as 
in function 
test
undefined
${message.author.tag} - inputted an used key. key : ${key}

主要功能继续而不检查,如果函数结束运行。

非常感谢您的帮助!

回答如下:

if (activated == "Null")

NULL是不是一个字符串,它是SQL语言的一个特殊值,表示该值是UKNOWN,在不确定等字样。

当你的数据库驱动程序从数据库中检索NULL值,它把它转换成任何对应于您正在使用的计算机语言,这在javascript将是一个NULL变量undefined概念。

你可以简单地改写这个条件的布尔检查:

if (!activated)

这将赶上情况activated是一个空字符串,不定值,一个假布尔值,而数字0

如果你想允许0,则:

if (activated !== 0)

与本文相关的文章

发布评论

评论列表 (0)

  1. 暂无评论