node封装mysql操作
前言
node是基于异步的,因此在进行数据库查询操作的通常是通过回调来操作查询结果。但是在有了es7的async/await,基本不再需要回调了,所以本篇是基于async/await对mysql进行一次操作封装,让查询更加方便。(node版本需>=7.0)。
aaarticlea/png;base64,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" alt="" />
原理
简单来说,async/await的实现原理是基于promise,根据promise的状态来判断是否真正返回,因此我们可以在mysql真正查询到结果后将promise状态切换为resolve,返回结果。如出现错误通过reject返回错误信息,reject需要用try/catch进行捕获。
代码
'use strict';
const mysql = require( 'mysql' ); var pool = mysql.createPool( {
connectionLimit : 50,
host : '',
user : '',
password : '',
database : '',
multipleStatements : true //是否允许执行多条sql语句
} );
//将结果已对象数组返回
var row=( sql , ...params )=>{
return new Promise(function(resolve,reject){
pool.getConnection(function(err,connection){
if(err){
reject(err);
return;
}
connection.query( sql , params , function(error,res){
connection.release();
if(error){
reject(error);
return;
}
resolve(res);
});
});
});
};
//返回一个对象
var first=( sql , ...params )=>{
return new Promise(function(resolve,reject){
pool.getConnection(function(err,connection){
if(err){
reject(err);
return;
}
connection.query( sql , params , function(error,res){
connection.release();
if(error){
reject(error);
return;
}
resolve( res[0] || null );
});
});
});
};
//返回单个查询结果
var single=(sql , ...params )=>{
return new Promise(function(resolve,reject){
pool.getConnection(function(err,connection){
if(err){
reject(err);
return;
}
connection.query( sql , params , function(error,res){
connection.release();
if(error){
reject( error );
return;
}
for( let i in res[0] )
{
resolve( res[0][i] || null );
return;
}
resolve(null);
});
});
});
}
//执行代码,返回执行结果
var execute=(sql , ...params )=>{
return new Promise(function(resolve,reject){
pool.getConnection(function(err,connection){
if(err){
reject(err);
return;
}
connection.query( sql , params , function(error,res){
connection.release();
if(error){
reject(error);
return;
}
resolve( res );
});
});
});
} //模块导出
module.exports = {
ROW : row ,
FIRST : first ,
SINGLE : single ,
EXECUTE : execute
}
使用示例。
const mysql = require('./mysql.js'); (async ()=>{
let s = await mysql.row(sql,params);
console.log(s);
})();
node封装mysql操作的更多相关文章
- php--->单例模式封装mysql操作类
php 单例模式封装mysql操作类 单例模式的必要条件(三私一公) 私有的成员属性--防止类外引入这个存放对象的属性 私有的构造方法--为了防止在类外使用new关键字实例化对象 私有的克隆方法--为 ...
- node封装mysql模块
node是基于异步的,因此在进行数据库查询操作的通常是通过回调来操作查询结果.但是在有了es7的async/await,基本不再需要回调了,所以本篇是基于async/await对mysql进行一次操作 ...
- node.js连接数据库基本操作、封装数据库操作,输出到网页
声明:以下代码测试通过,不同于直接的复制粘贴乱七八糟未测试的代码,完全可以用,最后会附上所有的代码和sql文件 首先建立表,建表语句如下: /* SQLyog Ultimate v12.08 (64 ...
- php 封装mysql 数据库操作类
<?phpheader('content-type:text/html;charset=utf-8');//封装mysql 连接数据库php_mysql//封装mysql 连接数据库ph ...
- 封装MySQL的单例,连接数据库并对数据进行增删改查操作
单例: 一个类只能有一个对象 应用场景:多次请求数据库只需要一个连接对象. 实现:三私一公 1.私有的静态属性用来保存对象的单例2.私有的构造方法用来阻止在类的外部实例化3.私有的__clone阻止在 ...
- 进一步封装poco下的mysql操作
为方便程序对mysql操作,我对poco的mysql进行了再次封装,主要是针对自己应用需要的部分. 开发工具:netbean 系统环境:centos7 poco版本: poco-1.9.0-all 主 ...
- mysql操作封装
<?php//连接数据库function connect(){ $link = mysql_connect(DB_HOST,DB_USER,DB_PWD)or die("数据库连接失 ...
- mongoose - 让node.js高效操作mongodb
Mongoose库简而言之就是在node环境中操作MongoDB数据库的一种便捷的封装,一种对象模型工具,类似ORM,Mongoose将数据库中的数据转换为JavaScript对象以供你在应用中使用. ...
- node.js高效操作mongodb
node.js高效操作mongodb Mongoose库简而言之就是在node环境中操作MongoDB数据库的一种便捷的封装,一种对象模型工具,类似ORM,Mongoose将数据库中的数据转换为Jav ...
随机推荐
- WPF TreeView 选择事件执行两次,获取TreeView的父节点的解决方法
1.TreeView选择事件执行两次 Very often, we need to execute some code in SelectedItemChanged depending on the ...
- (微信小程序)一 : 初识微信小程序
首先看过angularjs的同学们在看微信小程序的创始文件应该不算很陌生吧. 需要看的 先是文件目录 看完这个目录..得知 ( 一 ) pages 他存放于多个页面 如 index ,log ...
- centos下MySQL Workbench连接时崩溃的解决方法
在centos6.5中使用MySQL Workbench 6.3.8链接数据库崩溃,如果是在终端使用命令“mysql-workbench”打开的话会有如下错误提示: /usr/libexec/mysq ...
- BZOJ3884(SummerTrainingDay04-C 欧拉定理)
上帝与集合的正确用法 根据一些书上的记载,上帝的一次失败的创世经历是这样的: 第一天, 上帝创造了一个世界的基本元素,称做“元”. 第二天, 上帝创造了一个新的元素,称作“α”.“α”被定义为“元 ...
- format格式化字符串
假如想要表达这样一条语句:李明今年十二岁 输出这样一条语句 name = 'LiMing' age = 12 print( name + 'is' + age + 'years old') #输出 L ...
- 小程序 js中获取时间new date()的用法(网络复制过来自用)
js中获取时间new date()的用法 获取时间: 1 var myDate = new Date();//获取系统当前时间 获取特定格式的时间: 1 myDate.getYear(); //获 ...
- _rqy's Code Style for OI
_rqy's Code Style for OI Inspired by Menci's Code Style for OI 本文介绍_rqy的OI中的代码规范.其来源主要为_rqy的长期积累及参考G ...
- linux学习笔记-目录结构(1)
每个linux系统的目录结构差不多,因为有FHS(Filesystem Hierarchy Standard)标准的规范. FHS的重点在于规范每个特定的目录下应该要放什么样的数据. FHS依据文件系 ...
- js-redux学习笔记2
1.为了 dispatch 一个 action,我们需要一个 dispatch 函数.可以用一个 action creator 去发送一个 action. var setNameActionCreat ...
- php递归获取无限分类菜单
从数据库获取所有菜单信息,需要根据id,pid字段获取主菜单及其子菜单,以及子菜单下的子菜单,可以通过函数递归来实现. <?php class Menu { public $menu = arr ...