YEPS MySQL
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
config
tests
.editorconfig
.eslintrc
.gitignore
.istanbul.yml
.travis.yml
LICENSE
README.md
appveyor.yml
index.js
package.json
pool.js

README.md

YEPS MySQL

YEPS Promise based mysql client

NPM

npm version Build Status Coverage Status Linux Build Windows Build

Dependency Status devDependency Status NSP Status

License GitHub stars GitHub forks GitHub issues Twitter

How to install

npm i -S yeps-mysql

How to use

Config

config/default.json

{
    "mysql": {
        "host": "127.0.0.1",
        "port": 3306,
        "user": "user",
        "password": "password",
        "database": "database",
        "connectionLimit": 10
     }
}

Middleware

const App = require('yeps');

const error = require('yeps-error');
const logger = require('yeps-logger');
const server = require('yeps-server');

const mysql = require('yeps-mysql');

const app = new App();

app.all([
    error(),
    logger(),
    mysql(),
]);

app.then(async ctx => {
    const rows = await ctx.mysql.query('select * from users;');
});

server.createHttpServer(app);

And with connection:

const App = require('yeps');

const error = require('yeps-error');
const logger = require('yeps-logger');
const server = require('yeps-server');

const mysql = require('yeps-mysql');

const app = new App();

app.all([
    error(),
    logger(),
    mysql(),
]);

app.then(async ctx => {
    const connection = await ctx.mysql.getConnection();
    const rows = await connection.query('select * from users;');
    ctx.mysql.releaseConnection(connection);
});

server.createHttpServer(app);

In module

const pool = require('yeps-mysql/pool');
const logger = require('yeps-logger/logger');

async () => {
    try {
        const rows = await pool.query('select * from users;');
    } catch (error) {
        logger.error(error);
    }
};

And with connection:

const pool = require('yeps-mysql/pool');
const logger = require('yeps-logger/logger');

async () => {
    try {
        const connection = await pool.getConnection();
        const rows = await connection.query('select * from users;');
        pool.releaseConnection(connection);
    } catch (error) {
        logger.error(error);
    }
};

Transactions

const App = require('yeps');

const error = require('yeps-error');
const logger = require('yeps-logger');
const server = require('yeps-server');

const mysql = require('yeps-mysql');

const app = new App();

app.all([
    error(),
    logger(),
    mysql(),
]);

app.then(async ctx => {
    const connection = await ctx.mysql.getConnection();
    
    try {
        await connection.beginTransaction()
        const rows = await connection.query('delete from users;');
        await connection.commit();
    } catch (error) {
        await connection.rollback();
    } finally {
        ctx.mysql.releaseConnection(connection);
    }
});

server.createHttpServer(app);

YEPS documentation

Dependencies: