为什么受影响的行在更新/删除成功时返回0?

我有话说:

INSERT INTO infotbl(name, phone) VALUES('Alex', '9999999'); 

并更新它:

 UPDATE infotbl SET name = 'Alex Johnes', phone = '999 34356063' WHERE id = 1; 

然后删除:

 DELETE FROM infotbl WHERE id = 1; 

我已经成功插入了,当我更新和删除行已被更改在MySQL。 但我在Node中的代码返回受影响的行= 0.为什么? 有我的function来更新和删除节点中:

 function deleteCustomer (id, callback) { db.connection.query("DELETE FROM infotbl WHERE id=?", id, (err, result) => { if (err) throw err; if (result.affectedRows > 0) callback(true); else callback(false); }); }; 

和更新function:

 function updateCustomer(id, name, phone, callback) { db.connection.query("UPDATE infotbl SET name = ?, phone = ? WHERE id = ?;", [name, phone, id], (err, result) => { if (err) throw err; if (result.affectedRows > 0) callback(true); else callback(false); }); } 

数据库执行成功后为什么节点返回0受影响的行?

最可能的解释是没有行满足UPDATE和DELETE语句中的条件。 也就是说,没有id值等于1

如果条件匹配一个或多个行,则UPDATE可能会影响零行,但应用于该行的更改会导致“无变化”…也就是说,要修改的列已经分配了值。

成功执行但影响零行的UPDATE或DELETE仍被视为成功。

错误无法读取未定义的属性“0”

我正在为我的移动应用程序构build一个nodejs服务器,并且在保存数据时遇到了问题,我可以在data.jade中显示它

在这里我的错误消息:

Cannot read property '0' of undefined at jade_debug.unshift.lineno (eval at <anonymous> (/Users/****/Documents/Node- server/node_modules/jade/lib/jade.js:160:8), <anonymous>:33:21) at eval (eval at <anonymous> (/Users/****/Documents/Node-server/node_modules/jade/lib/jade.js:160:8), <anonymous>:65:4) at res (/Users/****/Documents/Node-server/node_modules/jade/lib/jade.js:161:38) at Object.exports.render (/Users/****/Documents/Node-server/node_modules/jade/lib/jade.js:257:10) at Object.exports.renderFile (/Users/****/Documents/Node-server/node_modules/jade/lib/jade.js:293:18) at View.exports.renderFile [as engine] (/Users/Yanis/Documents/Node-server/node_modules/jade/lib/jade.js:278:21) at View.render (/Users/****/Documents/Node-server/node_modules/express/lib/view.js:76:8) at Function.app.render (/Users/****/Documents/Node-server/node_modules/express/lib/application.js:505:10) at ServerResponse.res.render (/Users/****/Documents/Node-server/node_modules/express/lib/response.js:756:7) at /Users/****/Documents/Node-server/index.js:44:9 

index.js:

 app.get('/:collection', function(req, res) { var params = req.params; collectionDriver.findAll(req.params.collection, function (error, objs) { if (error) { console.log("mongo db error"+error); objs = []; } else { if (req.accepts('html')) { res.render('data', {objects: objs, collection: req.params.collection}); } else { res.set('Content-Type', 'application/json'); res.send(200, objs); } } }); }); 

最后是我的data.jade:

 #objects table(border=1) if objects.length > 0 - each val, key in object[0] th= key - each obj in objects tr.obj - each val, key in obj td.key= val 

正如你可以看到我的对象是不是在data.jade“定义”,我不知道为什么。 我不知道这个问题是来自玉文件还是de .js。 你们谁都有解决scheme?

object[0]可能应该是data.jade objects[0]

节点不会运行,只是退出代码0

好几天前我总是打电话给npm install和调用sudo ,我试图卸载节点,并试图通过自制安装,我设法做了一个巨大的灾难,但最终它的工作。 到现在…

当我运行node app.jsnpm install它只是不会做任何事情。

  • 我尝试删除这样的相关文件。

  • 我尝试使用nvm 。

  • 从节点主页尝试手动安装.pkg文件。

  • 再次尝试通过自制。

而且还没有运气; 然而,如果Node应用程序有编译错误,我得到的错误堆栈,但是当一切都“好”,而不是开始监听传入的连接,它只是退出代码0。

好吧,我觉得reaaaaaaaaally愚蠢后,我发现这个问题,在我的postgresqlconfiguration我有错误的数据库密码,并由于某种原因造成了这一切的混乱。 如果你低估了我是一个这样的傻瓜,你会明白吗?

OneOfOne的node debug然后保持按下s为我做的伎俩。

如何推动数组的索引0的元素

我有这样的情况,

我有2 array1 array1 = ["fruit","vegetables"];

array2 = [["apple","banana"],["tomato"]]; // index 0:represent fruit i,e (["apple","banana"]), index 1: vegetables i,e (["tomato"])

我的问题怎样才能从array1 push item ,以使我的array2看起来像这样

[["fruit","apple","banana"],["vegetables","tomato"]];

与我可以确定index:0作为category

我的 data structure是这2个array array1 = ["fruit","vegetables"]; AND array2 = [["apple","banana"],["tomato"]];

如果我能够得到对我有好处的key valuearray

我的样本数据:

 array1 = ["fruit","vegetables"]; array2 = [["apple","banana"],["tomato"]]; //expected output :[["fruit","apple","banana"],["vegetables","tomato"]]; 

使用Array#unshift方法。

 var array1 = ["fruit", "vegetables"], array2 = [ ["apple", "banana"], ["tomato"] ]; var array3 = array2.map(function(v, i) { // iterate over the array to generate the new array var arr = v.slice(); // copy the array arr.unshift(array1[i]) // insert element at beginning return arr; /// return generated array }); console.log(array3) 

试试这个Array.map()Array.unshift()unshift()将数据推入数组[0]index位置。

 array1 = ["fruit","vegetables"]; array2 = [["apple","banana"],["tomato"]]; array2.map((a,i) => a.unshift(array1[i])) console.log(array2) 
Interesting Posts

如何cachingexpressjs响应

在节点REST服务器中,Mongo $ sample(聚合)在GET操作中不起作用

根据更新的字段调用函数

HTML5模式 – ui-router – 未捕获SyntaxError:意外的标记<

replace为JavaScript中的单个反斜杠?

为什么在会话结束之后,MongoStore的MongoStore会不走呢?

将function传递给下一个function,根据条件进行激活。 的NodeJS

在node.js中共享对象并避免全局性

Sails.js滚动会话

即使JSON数据在MongoDB上持久化,nodeJS方法也会报错

在Express.js中redirect后调用下一个中间件

寻找更新的节点Facebook模板

节点expressJwt除非指定id路由

express + jade:提供的局部variables在视图中是未定义的(node.js + express + jade)

我如何格式化来自MongoDB的date?

在节点REST服务器中,Mongo $ sample(聚合)在GET操作中不起作用

expressjs中附加的请求可以被篡改吗?

如何将Node / Express设置为STUN服务器?

如何从请求处理程序中分离代码(node.js&express.js)

同时写入和读取节点stream

如何在expressjs nodejs中嵌套REST GET请求

如何通过Express中的中间件链来识别请求(通过ID)。

Express-Validator中的本地化stringvalidation

如何通过CompoundJS中的“使用”方法传递参数?

简单Nodejs正则expression式:从两个string之间提取文本

如何使用节点JSredirect?

如何在node.js中使用express来更改上传path

Node.js(Express)表格在提交时清除

未定义的req.session和req.session.user_id不起作用

Node.js表示嵌套的资源

Node.js – 从函数返回数组

当用正则expression式search时,redis的响应时间很长

如何使用joi(Node.js的validation框架)validation对象的数组?

如何在nodejs和express中处理exception

有没有一个模块轻松地模拟req / res对象的unit testing连接样式处理程序?

HTTP套接字closures连接已closures

平均应用程序。 同时两台服务器Express,NodeJS,Angular 2

正则expression式来查找最接近某些字符的引号

无法从不同的networkingexpress.js进行连接

剥离HTML到允许的标签