postgrease
v0.1.2
Published
A lightweight and powerful interface for node-postgres (pg)
Downloads
5
Readme
Postgrease
A lightweight, promise-based interface that brings ease to postgres. Postgrease is a wrapper around the node-postgres module.
Installation
npm install --save postgrease
Initialization
Postgrease takes whatever you would use to initialize node-postgres: this can be a connection string, or a config object.
var db = require('postgrease');
var dbconfig = {
host: 'localhost',
database: 'example',
user: 'notduncansmith',
port: '5432',
password: 'mypassword'
};
db.configure(dbconfig);
Usage
Important Notes:
- All Postgrease methods return promises
- All methods except
query
use parameterized queries
query
This is a basic promise wrapper around pg's client.query()
method. It requires one parameter, sql
, the SQL string to execute.
If you want to make a parameterized query, you can also pass a second argument, params
, which should be an array containing the values to be passed.
db.query('SELECT * FROM users')
.then(function(results) {
console.log(results);
});
select
This is a convenience method for selecting records from a database by their id
s. It takes an options object with the following properties:
params
: an array of ids to select by (you need to use an array, even if you only have one id)fields
: an array of fields to select (you can select * by setting fields to['*']
)table
: the name of the table to run this query against
var opts = {
ids: ['1','2','3'],
fields: ['name','email'],
table: 'users'
}
db.select(opts)
.then(function(results) {
console.log(results);
});
selectWhere
This is like the select
method, except you pass it a field to select on.
var opts = {
params: ['notduncansmith'],
fields: ['name', 'email'],
searchBy: 'username',
table: 'users'
};
db.select(opts)
.then(function(results) {
console.log(results);
});
selectAll
This is a convenience method for returning all records from a table. It takes a single parameter, the name of the table you want to select from.
db.selectAll('users').then(function(results) {
console.log(results);
});
insert
This method allows you to insert an object into a table. It takes two parameters, the object and the table name.
var duncan = {
username: 'notduncansmith',
name: 'Duncan Smith',
email: '[email protected]'
};
db.insert(duncan, 'users').then(function(results){
console.log(results);
});
MIT license, see LICENSE.txt for details.