node-red-contrib-postgrestor-next 0.5.0
Yet another Node-RED node to query PostgreSQL with query parameters
node-red-contrib-pg
Node-red-contrib-postgrestor :space_invader: is a Node-RED node allowing basic access to Postgres :elephant: database.
This fork has updated dependencies and allows to Parameterized query, throwing exceptions,and a listen node (for listening to NOTIFY events in postgres. BEWARE for sql injection. use with care or help me solve!)
Pass them as a parameter array *params of the msg object.
Node-red-contrib-postgrestor sets up a console to execute queries against the configured database.
msg.payload
will contain the result object of the query. It has the following properties:
command
: The sql command that was executed (e.g. "SELECT", "UPDATE", etc.)rowCount
: The number of rows affected by the SQL statementoid
: The oid returnedrows
: An array of rows
Postgres implements a template engine allowing parameterized queries:
/* INTEGER id COLUMN */
SELECT * FROM table WHERE id = {{ msg.id }}
/* VARCHAR id COLUMN */
SELECT * FROM table WHERE id = '{{ msg.id }}'
SELECT * FROM table where name = $1;
msg.params = ['Andrea']
Installation
Using the Node-RED Editor
From version 0.15 of Node-RED you can install node-red-contrib-postgrestor directly using the editor. To do this select Manage Palette
from the menu (top right), and then select the install
tab in the palette.
You can now search for node-red-contrib-postgrestor to install.
Installing npm packaged nodes
To install node-red-contrib-postgrestor npm-packaged node, you can also, either install it locally within your user data directory (by default, $HOME/.node-red
):
cd $HOME/.node-red
npm i node-red-contrib-postgrestor-next
or globally alongside Node-RED:
npm i -g node-red-contrib-postgrestor-next
You will need to restart Node-RED for it to pick-up node-red-contrib-postgrestor.
Screen shots