Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在node.js中查询数据库时,results对象的值为null_Node.js_Node Mysql - Fatal编程技术网

在node.js中查询数据库时,results对象的值为null

在node.js中查询数据库时,results对象的值为null,node.js,node-mysql,Node.js,Node Mysql,因此,我试图从数据库中查询一条记录,然后将其转换为node.js中的xml格式。programname是sasinfo表的主键,因此可以保证我只处理一条记录。问题是,当我运行下面的代码时,console.log(messagetoclient)会打印以下内容: <messagetoclient><programname>undefined</programname><comment>undefined</comment><guid

因此,我试图从数据库中查询一条记录,然后将其转换为node.js中的xml格式。programname是sasinfo表的主键,因此可以保证我只处理一条记录。问题是,当我运行下面的代码时,console.log(messagetoclient)会打印以下内容:

<messagetoclient><programname>undefined</programname><comment>undefined</comment><guid>undefined</guid></messagetoclient>
未定义未定义
但是,console.log(results)会打印以下内容(记录中的正确值):

[{programname:'helloworld', 评论:‘测试’, GUID:'9B23E0F7B7DA4535B99F70301539A44'}]

有人能帮我弄清楚为什么没有打印键值对的值吗?谢谢

 query2 = connection.query('SELECT * FROM sasinfo WHERE programname = ?', [programname], function(err, results) {
              if(err){
                           console.log(err);
                    }
              else{
                    console.log(results);
                    messagetoclient= '<messagetoclient><programname>'+results.programname+'</programname><comment>'+results.comment+'</comment><guid>'+results.GUID+'<guid></messagetoclient>';
                    console.log(messagetoclient);
               }
            });
query2=connection.query('SELECT*FROM sasinfo WHERE programname=?',[programname],函数(err,results){
如果(错误){
控制台日志(err);
}
否则{
控制台日志(结果);
messagetoclient=''+results.programname+''+results.comment+''+results.GUID+'';
console.log(messagetoclient);
}
});
试试看

messagetoclient=''+结果[0]。程序名+''+结果[0]。注释+''+结果[0]。GUID+'';

因为
results
是一个数组。

不客气。如果答案解决了你的问题,请将其标记为正确。
messagetoclient= '<messagetoclient><programname>'+results[0].programname+'</programname><comment>'+results[0].comment+'</comment><guid>'+results[0].GUID+'<guid></messagetoclient>';