postgresql-service v9.0.0
postgresql-service
A simple wrapper around
node-pg
This simple service covers my own usage of the pg module. I only use
transactions and queries and I use dependency injection with
Knifecycle.
It also sets up a few tweaks I have to do for each projects like avoiding to mess up with dates.
Tagged templates
You may like to use pgsqwell with this module.
API
initPGService(services) ⇒ Promise.<Object>
Instantiate the pg service
Kind: global function
Returns: Promise.<Object> - A promise of the pg service  
| Param | Type | Description | 
|---|---|---|
| services | Object | The services to inject | 
| services.log | function | A logging function | 
| services.PG_URL_ENV_NAME | Object | The environment variable name in which to pick-up the PG url | 
| services.ENV | Object | An environment object | 
| services.PG | Object | A pg compatible configuration object | 
Example
import initPGService from 'postgresql-service';
const { service: pg, dispose } = await initPGService({
  log: console.log.bind(console),
  ENV: process.env, // Proxy the PG_URL env var
});
const result = pg.query('SELECT 1');
await dispose();- initPGService(services) ⇒ Promise.<Object>
- ~query() ⇒ String | Object
 - ~queries() ⇒ Array.<String> | Object
 - ~transaction() ⇒ Array.<String> | Object
 
 
initPGService~query() ⇒ String | Object
Executes the given query
Kind: inner method of initPGService
Returns: String - Query to executeObject - Arguments hash for the query
Example  
const { rows, fields } = await pg.query(
   'SELECT * FROM users WHERE user = $$userId',
   { userId: 1 }
);initPGService~queries() ⇒ Array.<String> | Object
Executes the given queries in parallel (using the connections pool)
Kind: inner method of initPGService
Returns: Array.<String> - Queries to executeObject - Arguments hashes for the queries
Example  
const [{ rows, fields }, { rows2, fields2 }] = await pg.queries([
   'SELECT * FROM users WHERE user = $$userId',
   'SELECT * FROM users WHERE user = $$userId',
], { userId: 1 });initPGService~transaction() ⇒ Array.<String> | Object
Executes the given queries in a single transaction
Kind: inner method of initPGService
Returns: Array.<String> - Queries to executeObject - Arguments hashes for the queries
Example  
const [, { rows, fields }] = await pg.transaction([
   'UPDATE users SET isActive = true WHERE user = $$userId',
   'SELECT * FROM users WHERE user = $$userId',
], { userId: 1 });Authors
License
11 months ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
6 years ago
6 years ago
7 years ago