@dannyiy/promise-mysql v4.1.2
Promise-mysql
Promise-mysql is a wrapper for mysqljs/mysql that wraps function calls with Bluebird promises.
API
mysql.createConnection(connectionOptions)
This will return a the promise of a connection object.
Parameters
connectionOptions object: A connectionOptions object
Return value
A Bluebird Promise that resolves to a connection object
mysql.createPool(connectionOptions)
This will return a the promise of a pool object.
Parameters
connectionOptions object: A connectionOptions object
Return value
A Bluebird Promise that resolves to a pool object
connectionOptions object
In addition to the connection options in mysqljs/mysql, promise-mysql accepts the following:
returnArgumentsArray boolean: If set to true then methods will return an array with the callback arguments from the underlying method (excluding the any errors) and the return value from the call.
mysqlWrapper function: A function that is passed the mysql object so that it can be wrapped with something like the aws-xray-sdk module. This function must either return the wrapped mysql object, return a promise of the wrapped mysql object or call the callback that is passed into the function.
Function arguments
mysql mysql object: The mysql object
callback(error, success) function: A node-style callback that can be used to pass the wrapped version of the mysql object out of the wrapper function.
Connection object methods
connection.query: Perform a query. See mysqljs/mysql documentation
connection.queryStream: Perform a query, but return the query object for streaming. See mysqljs/mysql documentation
connection.beginTransaction: Begin a transaction. See mysqljs/mysql documentation
connection.commit: Commit a transaction. See mysqljs/mysql documentation
connection.rollback: Roll back a transaction. See mysqljs/mysql documentation
connection.changeUser: Change the current connected user. See mysqljs/mysql documentation
connection.ping: Send a ping to the server. See mysqljs/mysql documentation
connection.end: End the connection. See mysqljs/mysql documentation
connection.destroy: Destroy the connection. See mysqljs/mysql documentation
connection.pause: Pause a connection. See mysqljs/mysql documentation
connection.resume: Resume a connection. See mysqljs/mysql documentation
connection.escape: Escape query values. See mysqljs/mysql documentation
connection.escapeId: Escape query identifiers. See mysqljs/mysql documentation
connection.format: Prepare a query. See mysqljs/mysql documentation
connection.on: Add a listener to the connection object. See mysqljs/mysql documentation for events that may be listened for.
Pool object methods
pool.getConnection: Get a connection from the pool. See mysqljs/mysql documentation
pool.releaseConnection: Release a connection back into the pool. See mysqljs/mysql documentation
pool.query: Get a connection from the pool, run a query and then release it back into the pool. See mysqljs/mysql documentation
pool.end: End all the connections in a pool. See mysqljs/mysql documentation
pool.escape: Escape query values. See mysqljs/mysql documentation
pool.escapeId: Escape query identifiers. See mysqljs/mysql documentation
pool.on: Add a listener to the connection object. See mysqljs/mysql documentation for events that may be listened for.
Upgrading from v3
The main difference is that mysql.createPool now returns a promise. Besides this, the API is the same and you should be able to upgrade straight to v4. The only other difference is the extra options in the connectionOptions object.