Skip to content

szyuan/express-mysql-connection

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

express-mysql-connection

一个能让你更方便连接并操作mysql的express中间件。将mysql的连接挂载到request对象上

安装 Install

npm install express-mysql-connection

策略 Strategies

  • single - 创建单个数据库连接,连接不会自动关闭,断开会自动尝试重连。 creates single database connection for an application instance. Connection is never closed. In case of disconnection it will try to reconnect again as described in node-mysql docs.
  • pool - 使用连接池进行数据库连接,并且使用的连接会在请求响应后自动释放回连接池。 creates pool of connections on an app instance level, and serves a single connection from pool per request. The connections is auto released to the pool at the response end.
  • request - 创建单个数据库连接,会在请求响应后自动关闭。 creates new connection per each request, and automatically closes it at the response end.

使用 Usage

使用中间件

var mysql = require('mysql'); // 需要引入mysql模块
var myConn = require('express-mysql-connection'); //引入本模块
var dbOptions = {
    host: 'localhost',
    user: 'dbuser',
    password: 'password',
    port: 3306,
    database: 'mydb'
} // 数据库配置
var useConnRoutRs = ['/api', '/test']; // 声明需要使用数据库的路径
app.use(useConnRoutRs, myConn(mysql, dbOptions, 'pool')); // 使用

// 当然你也可以全局使用: 
// app.use(myConn(mysql, dbOptions, 'pool'));

数据库查询

基本用法

app.get('api/foods', function(req, res, next) {
    var sql = 'SELECT * FROM food';
    // 获取连接
    req.getConnection(function(err, conn) {
        if(!err) {
            // 执行sql查询
            conn.query(sql,function(err, sqlResult) {
                if(!err) {
                    // 响应结果
                    res.json(sqlResult);
                }else {
                    throw err;
                }
            });
        }else {
            throw err;
        }
    });
});

About

express中间件,提供多种方式连接mysql,并将连接挂载到request对象上。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published