Skip to content

ethanresnick/node-pg-query-native

 
 

Repository files navigation

@sqlutils/parse

The real PostgreSQL parser, exposed for nodejs.

This is based on the output of libpg_query. This wraps the static library output and links it into a node module for use in js.

All credit for the hard problems goes to Lukas Fittl.

Requirements

Install node-gyp globally

npm install node-gyp -g

Installation

npm install @sqlutils/parse

Documentation

query.parseQuery(sql)/parseQuerySync

Parses the sql and returns a Promise for the parse tree (or returns the parse tree directly in the sync version). May reject with/throw a parse error.

The return value is an array, as multiple queries may be provided in a single string (semicolon-delimited, as Postgres expects).

query.parsePlPgSQL(funcsSql)/query.parsePlPgSQLSync(funcsSql)

Parses the contents of a PL/PGSql function, from a CREATE FUNCTION declaration, and returns a Promise for the parse tree (or returns the parse tree directly in the sync version). May reject with/throw a parse error.

Example

const parser = require('@sqlutils/parse');
parser.parseQuery('select 1').then(console.log);

Related

About

PostgreSQL Query Parser for Node.js

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 67.4%
  • JavaScript 19.9%
  • Shell 5.6%
  • Python 5.4%
  • Other 1.7%