UNPKG

datapumps

Version:

Node.js ETL (Extract, Transform, Load) toolkit for easy data import, export or transfer between systems.

26 lines (21 loc) 680 B
Promise = require('bluebird') mysqlMixin = (connection) -> (target) -> target._mysql = connection: connection query: Promise.promisify connection.query target.query = (query, args...) -> if args? @_mysql.query(query, args) else @_mysql.query(query) target.selectOne = (query, args...) -> target.query(query, args) .then (results) -> if results.length == 1 Promise.resolve(results[0]) else if results.length == 0 Promise.reject('Query returned no result') else Promise.reject('Query returned more than one result') module.exports = mysqlMixin