如何返回对象而不是数组? (带有node,js的mysql)

时间:2018-10-17 20:02:09

标签: javascript mysql node.js database

嘿,这么短,我今天刚开始使用mysql,我掌握了创建表,在表中插入行,查询行,更新和删除等操作的方法。但是我无法弄清楚如果我返回一个对象,该如何返回对象单个对象。

例如:

我想返回这样的对象

{标题:“ object1”,正文:“这是对象编号1”}

相反,它返回

[{title:'object1',body:'this is object number 1}]

我习惯于将mongodb和mongoose一起使用,并且当我使用

collection.find如果使用collection.find我有一个对象

所以我必须总是返回一个数组而不是MySQL对象吗?我听说过WITHOUT_ARRAY_WRAPPER,我曾尝试过使用

 let query = `SELECT * FROM posts WHERE id=1, WITHOUT_ARRAY_WRAPPER`;

 connection.query(query, (err, results, feilds) => {
     if(err) throw err;
     //etc...
 });

但是我收到一个语法错误,指出“ ER_PARSE_ERROR:您的SQL语法有错误;请查看与您的MySQL服务器版本相对应的手册,以找到在第1行的'WITHOUT_ARRAY_WRAPPER'附近使用的正确语法”

如果有人可以帮忙照亮一点,将不胜感激。

1 个答案:

答案 0 :(得分:0)

如果您知道返回的响应将始终是单个对象,那么很容易返回数组的第一个索引。代替return response,我们可以做return response[0],对吗??