Gesundheit generates SQL using a sugary API for managing the abstract syntax tree of a statement. After building your statement programmatically, gesundheit can compile it to a string or execute it against your database for you, using proper bound parameters and allowing for streaming of results.
Here's a quick example to illustrate:
select = require('./lib').select assert = require('assert') query = select('chairs', ['chair_type', 'size']) .where({chair_type: 'recliner', weight: {lt: 25}}) assert.deepEqual(query.compile(), [ 'SELECT chairs.chair_type, chairs.size FROM chairs WHERE chairs.chair_type = ? AND chairs.weight < ?', ['recliner', 25] ]) query.execute(console.log)
See the documentation for full API documentation and more examples showing different query types, joins, query execution and more.
In addition to the usual npm install gesundheit
, you will need to install
the driver for your database. Driver support is provided by Any-DB, which currently supports MySQL, Postgres
and SQLite3. So for example, if you use PostgreSQL as your database backend you
would do npm install --save any-db-postgres
.
MIT
Stephen Sugden <glurgle@gmail.com>