UNPKG

mysql2

Version:

fast mysql driver. Implements core protocol, prepared statements, ssl and compression in native JS

38 lines (29 loc) 961 B
var Readable = require('stream').Readable; // copy-paste from https://github.com/mysqljs/mysql/blob/master/lib/protocol/sequences/Query.js module.exports = function (command, connectionStream) { command.stream = function (options) { var stream; options = options || {}; options.objectMode = true; stream = new Readable(options), stream._read = function () { connectionStream.resume(); }; this.on('result', function (row, i) { if (!stream.push(row)) { connectionStream.pause(); } stream.emit('result', row, i); // replicate old emitter }); this.on('error', function (err) { stream.emit('error', err); // Pass on any errors }); this.on('end', function () { stream.push(null); // pushing null, indicating EOF }); this.on('fields', function (fields, i) { stream.emit('fields', fields, i); // replicate old emitter }); return stream; }; };