Skip to content
Snippets Groups Projects
README.md 2.17 KiB
Newer Older
  • Learn to ignore specific revisions
  • Hossam Fares's avatar
    Hossam Fares committed
    # mysql-promise
    
    Small promises wrapper for [`mysql2`](https://github.com/sidorares/node-mysql2), 
    it's forked and compatible with [`mysql-promise`](https://github.com/martinj/node-mysql-promise).
    
    
    [![build status](https://api.travis-ci.com/namshi/node-mysql2-promise.svg?token=tS5zF7JF9Zh1pepFK56c)](http://travis-ci.org/namshi/node-mysql2-promise)
    
    Hossam Fares's avatar
    Hossam Fares committed
    
    ## Installation
    
    This module is installed via npm:
    
    ``` bash
    $ npm install mysql2-promise --save
    ```
    
    ## Example Usage of query
    
    ``` js
    var db = require('mysql2-promise')();
    
    db.configure({
    	"host": "localhost",
    	"user": "foo",
    	"password": "bar",
    	"database": "db"
    });
    
    db.query('UPDATE foo SET key = ?', ['value']).then(function () {
    	return db.query('SELECT * FROM foo');
    }).spread(function (rows) {
    	console.log('Look at all the foo', rows);
    });
    
    //using multiple databases, giving it a name 'second-db' so it can be retrieved inside other modules/files.
    var db2 = require('mysql-promise')('second-db');
    
    db2.configure({
    	"host": "localhost",
    	"user": "foo",
    	"password": "bar",
    	"database": "another-db"
    });
    
    db2.query('SELECT * FROM users').spread(function (users) {
    	console.log('Hello users', users);
    });
    
    
    ```
    
    ## Example Usage of execute
    
    `execute()` function is similar to `query` but it use [prepared-statements](https://github.com/sidorares/node-mysql2#prepared-statements).
    
    ``` js
    var db = require('mysql2-promise')();
    
    db.configure({
    	"host": "localhost",
    	"user": "foo",
    	"password": "bar",
    	"database": "db"
    });
    
    db.execute('SELECT * FROM users WHERE LIMIT = ?', [10]).spread(function (users) {
    	console.log('Hello users', users);
    });
    
    ```
    
    ## Example usage of [namedPlaceholders]((https://github.com/sidorares/node-mysql2#named-placeholders))
    
    ``` js
    var db = require('mysql2-promise')();
    
    db.configure({
    	"host": "localhost",
    	"user": "foo",
    	"password": "bar",
    	"database": "db"
    });
    
    connection.pool.on('connection', function (poolConnection) {
        poolConnection.config.namedPlaceholders = true;
    }
    
    db.execute('SELECT * FROM users WHERE LIMIT = :limit', {limit: 10}).spread(function (users) {
    	console.log('Hello users', users);
    });
    
    ```
    
    ## Credits
    
    This library is forked from [`mysql-promise`](https://github.com/martinj/node-mysql-promise)