koa-mysql
A Node.js Koa wrapper for felixge/node-mysql based off of sidorares/mysql-co.
Requirements
- Node.js v4.x+ for ES6 generators support
Usage
First, install the package using npm:
npm install koa-mysql --save
Then, execute a query within a Koa middleware function using the following code:
var mysql = require('koa-mysql');
var db = mysql.createPool({ user: 'root', password: '', database: 'test', host: 'localhost' });
var rows = yield db.query("select ? + ? as test", [1, 2]);
this.body = { test: rows[0].test };
Koa Example
Here's a more complete example that includes creating a basic Koa app and executing a query (also available in examples/query.js
):
var koa = require('koa');
var mysql = require('koa-mysql');
var db = mysql.createPool({ user: 'root', password: '', database: 'test', host: 'localhost' });
var app = koa();
app.use(function* () {
try {
var rows = yield db.query("select ? + ? as test", [1, 2]);
this.body = { test: rows[0].test };
}
catch (err) {
this.status = 500;
this.body = { error: err };
}
});
var port = process.env.PORT || 3000;
app.listen(port);
console.log('Server listening on port ' + port);
Run the script and visit http://localhost:3000/ to test it out. The server should return { test: 3 }
.
License
Apache 2.0