This repo is a monorepo which contains the core pg module as well as a handful of related modules.
Each package in this repo should have its own readme more focused on how to develop/contribute. For overall documentation on the project and the related modules managed by this repo please see:
The source repo for the documentation is https://github.com/brianc/node-postgres-docs.
COPY TO/COPY FROM
node-postgres is by design pretty light on abstractions. These are some handy modules we've been using over the years to complete the picture. The entire list can be found on our wiki.
node-postgres is free software. If you encounter a bug with the library please open an issue on the GitHub repo. If you have questions unanswered by the documentation please open an issue pointing out how the documentation was unclear & I will do my best to make it better!
When you open an issue please provide:
You can also follow me @briancarlson if that's your thing. I try to always announce noteworthy changes & developments with node-postgres on Twitter.
node-postgres's continued development has been made possible in part by generous finanical support from the community and these featured sponsors:
If you or your company are benefiting from node-postgres and would like to help keep the project financially sustainable please consider supporting its development.
I will happily accept your pull request if it:
If your change involves breaking backwards compatibility please please point that out in the pull request & we can discuss & plan when and how to release it and what type of documentation or communication it will require.
yarn lerna bootstrap
yarn testto run all the tests
The causes and solutions to common errors can be found among the Frequently Asked Questions (FAQ)
Copyright (c) 2010-2020 Brian Carlson (email@example.com)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Pg is a very easy and beginner friendly tool. Its basic and its simple. I have used this package in a lot of projects in my early learning days, it was so easy to get started. It has a very good documentation, a decent community support and and Easy API's. So that you dont get confused. One of the things that I like about this library is the error message, they are very good at conveying the error and what went wrong, and how it can be fixed, very few library does this and I think a lot of other libraries should do this also, essentially it acts sort of like a documentation.
I'm using this library in my current project to interact with PostgreSQL database. Its very simple to connect to your database with this. It supports for promise objects, async / await calls and all CRUD operations are easy to perform. You can also write prepared states , cursors etc. Now interacting with database made so simple. It has rich documentation and wide community support. It supports both TSL/SSL connections to connect PostgreSQL.
ORM we use has few issues related sometimes, of all ORMs I've used I have seen a bit of problem when I work with Postgres, finally, I fund this package this is very minimal and fast. The best thing about this package is that it has very good documentation, and the guides page in documentation is even better, which gives very good examples as to how to get started on this package. Would definitely suggest using this one instead of other ORMs.
Pg is a great database connector for the node.js app. With the Pg client even simple queries can be executed performantly. However, when it comes to multiple joints and quering from multiple views, I've observed the timeouts from the pg client. To overcome this, we have to manually write the error-handling mechanisms with this module and it is a painful moment.
Love this package. Very easy to use. Postgres is the way to go if you're wanting a relational database. I'm not a database guy by any stretch of that definition. But I will say that this package makes it very easy to interact with your postgres db.