node-pg-native - Native (C/C++) bindings to PostgreSQL with sync and async options.

  •        19

A slightly nicer interface to Postgres over node-libpq

https://github.com/brianc/node-pg-native

Dependencies:

libpq : ^1.7.0
pg-types : ^1.12.1
readable-stream : 1.0.31

Tags
Implementation
License
Platform

   




Related Projects

rdb - Javascript ORM

  •    Javascript

ORM for nodejs. Supports postgres, mySql and sqlite. 1.7.1 Support for schemas (postgres only). 1.7.0 sqlite3 is now a peer dependency. Add it to your own package.json if you intend to use it. 1.6.9 Bugfix: one-to-many relation returns empty if strategy is included. 1.6.8 Bugfix: one-to-many relation returns empty if insert/update is done earlier in transaction. 1.6.7 Bugfix in relations. 1.6.6 Bugfix. 1.6.5 Improved performance on relations. 1.6.4 Bugfix. 1.6.3 Bugfix: potential incorrect timeZoneOffset when serializing date to JSON. Got timeZoneOffset from now() instead of on actual date. 1.6.2 Removed es6 syntax to ensure backwards compatability. Fixed global var leak. 1.6.1 Now supporting sqlite. 1.6.0 Bugfix: potential ambigous column error when using limit and relating to other tables. 1.5.9 Bugfix: using multipleStatements in mySql could sometimes cause an error when updates are run right before a select. Improved performance on limit when relating to other tables. Using uuid instead of node-uuid Updated all dependencies but generic-pool to latest. (Generic-pool has some breaking changes in latest. I will update it in next release.) 1.5.8 Cleanup line breaks in documentation. 1.5.7 Bugfix: getById.exclusive and tryGetById.exclusive did not lock if row was cached. Improved performance on tryGetFirst. 1.5.6 Raw sql filters can accept sql both as string and as function. E.g. var filter = {sql: function() {return 'foo > 1';}}. 1.5.5 Optional locks for getMany, tryGetFirst and tryGetById. Instead of calling getMany(params) just call getMany.exclusive(params). Same syntax goes for tryGetFirst and tryGetById. This will result in SELECT FOR UPDATE. Bugfix: bulk deletes now accepts raw sql filters too. 1.5.4 Transaction locks. Postgres only. 1.5.3 Upgraded to pg 6.0.3 1.5.2 Improved performance and reduced memory footprint. 1.5.1 Documented JSON column type. Bug fix: Insert and foreign key violation. 1.5.0 JSON column type. Postgres json type does not support rdb filters. 1.4.1 Empty filter would sometimes cause invalid filter. 1.4.0 Raw SQL query. 1.3.0 getMany() now supports limit and orderBy - same syntax as in streaming. 1.2.3 Bugfix: iEqual gave incorrect sql when parameterized. 1.2.2 Exlusive no longer returns a clone of table. It has changes current table to exclusive locking. 1.2.1 Bugfix: Exclusive row locks 1.2.0 Exclusive row locks 1.1.0 Now supporting streaming. Requires postgres or MySQL >=5.7.7 1.0.8 README fixup. 1.0.7 Better performance on insert and update. 1.0.6 Bugfix: Transaction domain should not forward rdb singleton from old domain. 1.0.5 Documentation cleanup. 1.0.4 orderBy in toDto(). 1.0.3 toDto() using next tick on every thousandth row to avoid maximum call stack size exceeded. 1.0.2 Reduced number of simultaneous promises in order to avoid maximum call stack size exceeded. 1.0.1 Bugfix: Incorrect insert/updates on timestamp without timezone. The time was converted utc instead of stripping the timezone. 1.0.0 Transaction domain forwards properties from old domain. Semantic versioning from now on. 0.5.1 Improved performance 0.5.0 Logging: rdb.log(someFunc) logs sql and parameters. Raw sql filters. 0.4.9 New method: tryGetById. New filter: iEqual, postgres only. Bugfix: rows.toJSON() without strategy did not include any children. 0.4.8 Explicit pooling with size and end(). Bugfix: mySql did not release client to pool. 0.4.7 Upgraded to pg 4.3.0 Upgraded to mysql 2.5.5 0.4.6 Upgraded pg 4.2.0. 0.4.5 Oops. Forgot to use pg.js instead of pg. 0.4.4 Upgraded all dependencies to latest. Using pg.js instead of pg. 0.4.3 Can ignore columns when serializing to dto. 0.4.2 Bugfix: update on a row crashes when a delete occurs earlier in same transaction. 0.4.1 Bugfix: more global leaks. 0.4.0 Bugfix: global leak. 0.3.9 Bugfix: eager loading joins/hasOne with non unique column names was not handled correctly. 0.3.8 Supports mySql. Bulk deletes. 0.3.7 Bugfix: eager loading manyRelation on a join/hasOne returned empty array #11 0.3.6 Fixed sql injection vulnerability. 0.3.5 Built-in fetching strategies for lazy loading. Works best in readonly scenarios. 0.3.4 Docs and examples split moved to separate file. 0.3.3 Fixed documentation layout again. 0.3.2 Fixed documentation layout. 0.3.1 Case insensitive filters: iStartsWith, iEndsWith and iContains. 0.3.0 Fix broken links in docs. 0.2.9 Support for row.delete(). Rollback only throws when error is present. 0.2.8 Guid accepts uppercase letters. Bugfix: null inserts on guid columns yielded wrong sql. 0.2.7 New method, toDto(), converts row to data transfer object. Bugfix: toJSON returned incorrect string on hasMany relations. 0.2.6 Fixed incorrect links in README. 0.2.5 Bugfix: caching on composite keys could give a crash #7. Improved sql compression on insert/update. 0.2.4 Bugfix: getMany with many-strategy and shallowFilter yields incorrect query #6. 0.2.3 Reformatted documentation. No code changes.

node-pg-migrate - Node.js database migration management for Postgresql

  •    Javascript

Node.js database migration management built exclusively for postgres. (But can also be used for other DBs conforming to SQL standard - e.g. CockroachDB.) Started by Theo Ephraim, now maintained by Salsita Software. You can specify your database connection information using config.

crystal-pg - a postgres driver for crystal

  •    Crystal

There are two ways to listen for notifications. For docs on NOTIFY, please read https://www.postgresql.org/docs/current/static/sql-notify.html. Crystal-pg is tested on Postgres versions 9.2 through 9.6. Since it uses protocol version 3, older versions probably also work but are not guaranteed.


DotNetNuke® Postgres Data Provider

  •    

DNN PG Provider is a DotNetNuke® 4.9.5 Data Provider for PostgreSQL, an enterprise class open source database system. With DNN PG DataProvider you are no longer limited to use commercial databases or commercial database providers to run DotNetNuke®. It is developed in C#.

slick-pg - Slick extensions for PostgreSQL

  •    Scala

Slick extensions for PostgreSQL, to support a series of pg data types and related operators/functions. ** Tested on PostgreSQL 10 with Slick 3.2.3. ** Java 8 is required.

postgraphile - Execute one command (or mount one Node

  •    TypeScript

An instant, highly-performant GraphQL API for your PostgreSQL database, extensible via a powerful plugin system. Note: v1-v3 of this project were named PostGraphQL. A v3-v4 migration guide is available here and you can check out some of the new features here. No more development is taking place on v3, but you can still access its branch here.

mongolike - A proof of concept MongoDB clone built on Postgres

  •    Javascript

Mongolike is an experimental MongoDB clone being built on top of PLV8 and Postgres. Visit http://code.google.com/p/plv8js/wiki/PLV8 and follow the build instructions.

heroku-pg-extras - A heroku plugin for awesome pg:* commands that are also great and fun and super.

  •    Javascript

A heroku plugin for awesome pg:* commands that are also great and fun and super. To publish new versions, see the data plugin documentation.

PG Calculator

  •    C++

PG Calculator is a powerfull scientific calculator and an excellent replacement for standard calculator. It ofers full customizable user inteface and looks like real calculator on user desktop. PG Calculator works in Algebraic and RPN mode.

pg_partman - Partition management extension for PostgreSQL

  •    PLpgSQL

pg_partman is an extension to create and manage both time-based and serial-based table partition sets. Native partitioning in PostgreSQL 10 is supported as of pg_partman v3.0.1. Note that all the features of trigger-based partitioning are not yet supported in native, but performance in both reads & writes is significantly better. Child table creation is all managed by the extension itself. For non-native, trigger function maintenance is also handled. For non-native partitioning, tables with existing data can have their data partitioned in easily managed smaller batches. For native partitioning, the creation of a new partitioned set is required and data will have to be migrated over separately.

massive-js - A data mapper for Node.js and PostgreSQL.

  •    Javascript

Massive.js is a data mapper for Node.js that goes all in on PostgreSQL and fully embraces the power and flexibility of the SQL language and relational metaphors. Providing minimal abstractions for the interfaces and tools you already use, its goal is to do just enough to make working with your data as easy and intuitive as possible, then get out of your way. Massive is not an object-relational mapper (ORM)! It doesn't use models, it doesn't track state, and it doesn't limit you to a single entity-based metaphor for accessing and persisting data. Massive connects to your database and introspects its schemas to build an API for the data model you already have: your tables, views, functions, and easily-modified SQL scripts.

PHP Pg frontend

  •    PHP

The PHP Pg frontend project is yet an another frontend for the PostgresSQL database but it fully works and several cool features.

VG-Ripper & PG-Ripper

  •    

VG-Ripper is a Utility that Downloads (Rips) all Images posted on the ViperGirls Forums, and PG-Ripper on all VB (vBulletin) Forums.

WordPress-Pg

  •    PHP

WordPress-Pg is a port of WordPress for PostgreSQL. WordPress is a PHP-based standards compliant blogging package. All standard blog features are included (links, categories, rss syndication, trackbacks, pingbacks).

Scheme-PG

  •    

Scheme-PG is a MzScheme extension and set of associated Scheme procedures and macros that combine to provide a simple yet powerful interface between PLT Scheme and the PostgreSQL database management system.

meteor-pg - Reactive PostgreSQL for Meteor

  •    Javascript

Provides Meteor integration of the pg-live-select NPM module, bringing reactive SELECT statement result sets from PostgreSQL >= 9.3. If you do not have PostgreSQL server already installed, you may use the numtel:pg-server Meteor Package to bundle the PostgreSQL server directly to your Meteor application.