Nodejs使用mysql模块之获得更新和删除影响的行数的方法
2014-03-18 00:00
851 查看
在mysql中直接进行这样的判断的方法是使用 row_count(), 这一条语句要紧跟着你执行的sql语句后面. 而Nodejs的i/o都是异步的于是这就产生了一个问题, 不太好判断 row_count()到底是哪句sql执行的结果. 粗略的扫了一眼文档, 文档中并没有描述这个问题. 本想函数嵌套来达到同步的效果的, 却无意发现在执行sql对应的异步函数中的参数中有 affectedRows字段, 经测试, 这货就是 row_count()的结果.
实例:
实例:
var cmd = 'UPDATE users SET ' + field + ' = ' + value + ' WHERE id = ' + userid; console.log(cmd); db.query(cmd, function(err, rows, fields){ var affectedRows = rows.affectedRows; if(err || affectedRows){ var msg = 'update ' + field + ' error'; logger.error(msg); res.send({ 'code': 500, 'state': 'failure', 'msg': msg, 'data': null }); return; } res.send({ 'code': 200, 'state': 'success', 'msg': 'updated', 'data': null }); });
相关文章推荐
- Nodejs使用mysql模块之获得更新和删除影响的行数的方法
- mysql使用ROW_COUNT()返回插入、更新、删除操作影响行数
- mysql使用ROW_COUNT()返回插入、更新、删除操作影响行数
- php更新mysql后获取影响的行数发生异常解决方法
- php更新mysql后获取影响的行数发生异常解决方法
- 存储区更新、插入或删除语句影响到了意外的行数({0})。
- NodeJs使用Mysql模块实现事务处理实例
- 因为数据库正在使用,所以无法获得对数据库的独占访问权---还原或删除数据库的解决方法
- nodejs的mysql模块学习(六)连接池的创建和使用
- PHP使用mysql_fetch_row查询获得数据行列表的方法
- mysql中的存储过程使用事物后如何正确得到影响行数
- sql2008 因为数据库正在使用,所以无法获得对数据库的独占访问权---还原或删除数据库的解决方法
- 关于pip的安装,更新,卸载模块以及使用方法(详解)
- 因为数据库正在使用,所以无法获得对数据库的独占访问权---还原或删除数据库的解决方法
- mysql使用教程之分区表的使用方法(删除分区表)
- Mysql EF 触发器生成主键id 存储区更新、插入或删除语句影响到了意外的行数(0)。实体在加载后可能被修改或删除。刷新 ObjectStateManager 项 ;System.Data.Entity.Infrastructure.DbUpdateConcurrencyException
- 因为数据库正在使用,所以无法获得对数据库的独占访问权---还原或删除数据库的解决方法
- GridView行编辑、更新、取消、删除事件使用方法
- 存储区更新、插入或删除语句影响到了意外的行数(0)。实体在加载后可能被修改或删除。刷新 ObjectS
- MySql中4种批量更新的方法(主要使用1,2)